[Lldb-commits] [PATCH] D149213: [lldb] Add basic support to Rust enums in TypeSystemClang

Greg Clayton via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Jul 11 15:33:41 PDT 2023


clayborg added inline comments.


================
Comment at: lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:3184
+    case DW_TAG_variant_part:
+      ParseVariantPart(die, parent_die, class_clang_type, default_accessibility,
+                       layout_info);
----------------
clayborg wrote:
> I would add a check here for the Rust language. We might also want to rename "ParseVariantPart" to "ParseRustVariant" to indicate this is specific to the Rust language.
Something like:

```
if (die.GetCU()->GetDWARFLanguageType() == eLanguageTypeRust) 
  ParseRustVariant(die, parent_die, class_clang_type, default_accessibility, layout_info);
break;
```


================
Comment at: lldb/test/API/lang/rust/enum-structs/TestEnumStructsGenerated.py:14
+        src_dir = self.getSourceDir()
+        yaml_path = os.path.join(src_dir, "main.yaml")
+        obj_path = self.getBuildArtifact("main.o")
----------------
the main.yaml below is empty? Will this test work?


================
Comment at: lldb/test/API/lang/rust/enum-structs/main.rs:1-4
+#![no_std]
+#![no_main]
+use core::ptr::NonNull;
+
----------------
Is this file used at all? I don't see any references to it. I am guessing that the main.yaml is expected to reference this file?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D149213/new/

https://reviews.llvm.org/D149213



More information about the lldb-commits mailing list