]> git.proxmox.com Git - rustc.git/blobdiff - src/etc/lldb_providers.py
Merge tag 'debian/1.52.1+dfsg1-1_exp2' into proxmox/buster
[rustc.git] / src / etc / lldb_providers.py
index 9c7b07efbaa778d35acd187177ccd051ddcb13e8..702f2e82e4e2c8a7be3248190043ca119fb4bef0 100644 (file)
@@ -531,7 +531,9 @@ class StdHashMapSyntheticProvider:
         ctrl = table.GetChildMemberWithName("ctrl").GetChildAtIndex(0)
 
         self.size = table.GetChildMemberWithName("items").GetValueAsUnsigned()
-        self.pair_type = table.type.template_args[0].GetTypedefedType()
+        self.pair_type = table.type.template_args[0]
+        if self.pair_type.IsTypedefType():
+            self.pair_type = self.pair_type.GetTypedefedType()
         self.pair_type_size = self.pair_type.GetByteSize()
 
         self.new_layout = not table.GetChildMemberWithName("data").IsValid()
@@ -561,7 +563,7 @@ class StdHashMapSyntheticProvider:
             # HashSet wraps either std HashMap or hashbrown::HashSet, which both
             # wrap hashbrown::HashMap, so either way we "unwrap" twice.
             hashbrown_hashmap = self.valobj.GetChildAtIndex(0).GetChildAtIndex(0)
-        return hashbrown_hashmap.GetChildMemberWithName("table")
+        return hashbrown_hashmap.GetChildMemberWithName("table").GetChildMemberWithName("table")
 
     def has_children(self):
         # type: () -> bool