aeubanks added inline comments.

================
Comment at: lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:765
+        m_ast.CreateClassTemplateSpecializationType(class_specialization_decl);
+    return clang_type.GetTypeName(/*BaseOnly*/ true);
+  }
----------------
Michael137 wrote:
> aeubanks wrote:
> > Michael137 wrote:
> > > Michael137 wrote:
> > > > Ok so what we're doing is:
> > > > 1. Create a `ClassTemplateSpecializationDecl` with an empty basename
> > > > 2. Return the type-name and since the basename is empty we end up with 
> > > > just the template arguments
> > > > 
> > > > Why can't we just call `GetTemplateParametersString(die)` instead of 
> > > > creating this function?
> > > Can confirm that this works locally. Though required moving that function 
> > > out of the DWARFASTParserClang, which seems OK
> > `GetTemplateParametersString` is specifically only used for 
> > `GetCPlusPlusQualifiedName`, which is used below
> > ```
> >       // For C++, we rely solely upon the one definition rule that says
> >       // only one thing can exist at a given decl context. We ignore the
> >       // file and line that things are declared on.
> >       std::string qualified_name = GetCPlusPlusQualifiedName(die);
> > ```
> > so it doesn't have to match clang's printing. but for the simple template 
> > name stuff, we are comparing clang-generated names, so everything needs to 
> > go through clang.
> > 
> > I've replaced `GetTemplateParametersString` with this code that goes 
> > through clang as well
> But didn't `GetTemplateParametersString` go through Clang's type printer too? 
> Probably missing something.
> What would be an example of the difference in output that could arise between 
> the new vs. old method?
one thing that I was aware of even initially implementing 
`GetTemplateParametersString` was spacing between two `>`, clang will add a 
space (unless you tell it not to), whereas the naive implementation didn't


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D138834

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to