diff --git a/src/etc/natvis/intrinsic.natvis b/src/etc/natvis/intrinsic.natvis
index 874550da8b0c9..030892a432b31 100644
--- a/src/etc/natvis/intrinsic.natvis
+++ b/src/etc/natvis/intrinsic.natvis
@@ -4,17 +4,21 @@
{data_ptr,[length]s8}
data_ptr,[length]s8
- - length
-
- length
- data_ptr
-
+ - length
+
+
+
+ length
+ data_ptr
+
+
+
- {{ length={length} }}
+ {{ len={length} }}
- - length
+ - length
length
data_ptr
diff --git a/src/etc/natvis/liballoc.natvis b/src/etc/natvis/liballoc.natvis
index de30b58526a13..cfaafc5734bce 100644
--- a/src/etc/natvis/liballoc.natvis
+++ b/src/etc/natvis/liballoc.natvis
@@ -1,9 +1,9 @@
- {{ size={len} }}
+ {{ len={len} }}
- - len
+ - len
- buf.cap
len
@@ -12,9 +12,9 @@
- {{ size={tail <= head ? head - tail : buf.cap - tail + head} }}
+ {{ len={tail <= head ? head - tail : buf.cap - tail + head} }}
- - tail <= head ? head - tail : buf.cap - tail + head
+ - tail <= head ? head - tail : buf.cap - tail + head
- buf.cap
@@ -31,7 +31,7 @@
- {{ size={len} }}
+ {{ len={len} }}
len
@@ -42,15 +42,37 @@
- {*(char**)this,[vec.len]s8}
- *(char**)this,[vec.len]s8
+ {(char*)vec.buf.ptr.pointer,[vec.len]s8}
+ (char*)vec.buf.ptr.pointer,[vec.len]s8
- - vec.len
+ - vec.len
- vec.buf.cap
-
- vec.len
- *(char**)this
-
+
+
+
+ vec.len
+ (char*)vec.buf.ptr.pointer
+
+
+
+
+
+
+ {ptr.pointer->value}
+
+ ptr.pointer->value
+
+
+
+ {ptr.pointer->data}
+
+ ptr.pointer->data
+
+
+
+ {ptr.pointer->data}
+
+ ptr.pointer->data
diff --git a/src/etc/natvis/libcore.natvis b/src/etc/natvis/libcore.natvis
index 0e703b3b95026..984a8bfb13c7c 100644
--- a/src/etc/natvis/libcore.natvis
+++ b/src/etc/natvis/libcore.natvis
@@ -6,34 +6,28 @@
- pointer
+
{{ Shared {pointer} }}
- pointer
+
- {{ None }}
- {{ Some {__0} }}
+ None
+ Some({__0})
- - (ULONG)(RUST$ENUM$DISR != 0)
- - __0
-
- (ULONG)(RUST$ENUM$DISR != 0)
- &__0
-
+ - __0
+
- {{ None }}
- {{ Some {($T1 *)this} }}
+ None
+ Some({($T1 *)this})
- - (ULONG)(*(PVOID *)this != nullptr)
- - ($T1 *)this
-
- (ULONG)(*(PVOID *)this != nullptr)
- ($T1 *)this
-
+ - ($T1 *)this
+
\ No newline at end of file
diff --git a/src/etc/natvis/libstd.natvis b/src/etc/natvis/libstd.natvis
index 9550c25f2fcfe..7e5ee7b13daf1 100644
--- a/src/etc/natvis/libstd.natvis
+++ b/src/etc/natvis/libstd.natvis
@@ -26,9 +26,9 @@
-->
- {{ size={base.table.items} }}
+ {{ len={base.table.items} }}
- - base.table.items
+ - base.table.items
- base.table.items + base.table.growth_left
- base.hash_builder
@@ -50,9 +50,9 @@
- {{ size={base.map.table.items} }}
+ {{ len={base.map.table.items} }}
- - base.map.table.items
+ - base.map.table.items
- base.map.table.items + base.map.table.growth_left
- base.map.hash_builder