jblachly added a comment. Thank you for creating a revision and reviewing this.
I made inline comments on the test harness and Dlang types / qualifiers. With removal of the Dlang types, where is the appropriate place to put them? It is not clear to me whether language plugins can replace the functionality in ClangASTContext::GetBuiltinTypeForDWARFEncodingAndBitSize. Thanks again ================ Comment at: lldb/packages/Python/lldbsuite/test/lang/cpp/char8_t/TestCxxChar8_t.py:26 + + @skipIf(compiler="clang", compiler_version=['<', '5.0']) + def test(self): ---------------- JDevlieghere wrote: > This should be 7 I believe clang7 requires -fchar8_t, whereas the test harness here passes -std=c++2a ; char8_t is enabled via -std=c++2a beginning in clang-8 "(11): Prior to Clang 8, this feature is not enabled by -std=c++2a, but can be enabled with -fchar8_t. " https://clang.llvm.org/cxx_status.html#p0482 ================ Comment at: lldb/source/Symbol/ClangASTContext.cpp:1383-1384 + streq(type_name, "wchar") || // dlang + streq(type_name, "const(wchar)") || + streq(type_name, "immutable(wchar)")) { return CompilerType(this, ast->Char16Ty.getAsOpaquePtr()); ---------------- clayborg wrote: > are "const(T)" and "immutable(T)" the actualy type names or are they layers > on top of a base "wchar" type? These shouldn't be needed if so as the base > "wchar" type should end up handling the base type correctly. Remove? In LDC (the LLVM D compiler), application of type qualifier immutable or const to a type T defines a new type. I am not a DWARF expert, but running a sample program through lldb seems to confirm this: error: need to add support for DW_TAG_base_type 'char' encoded with DW_ATE = 0x10, bit_size = 8 error: need to add support for DW_TAG_base_type 'const(char)' encoded with DW_ATE = 0x10, bit_size = 8 error: need to add support for DW_TAG_base_type 'immutable(char)' encoded with DW_ATE = 0x10, bit_size = 8 Whereas -- interestingly -- the reference compiler DMD encodes them differently (as char, const char, and char; respectively as the DWARF spec I guess has no qualifier for immutable). The LDC behavior is IMO more true to language spec. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D66447/new/ https://reviews.llvm.org/D66447 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits