[all-commits] [llvm/llvm-project] c2f976: [lldb/DWARF] Fix type definition search with simpl...

Pavel Labath via All-commits all-commits at lists.llvm.org
Wed Jun 19 23:09:23 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c2f976649a5ef405b224bfe36267966cdd394057
      https://github.com/llvm/llvm-project/commit/c2f976649a5ef405b224bfe36267966cdd394057
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-06-20 (Thu, 20 Jun 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/simple-template-names-context.cpp

  Log Message:
  -----------
  [lldb/DWARF] Fix type definition search with simple template names (#95905)

With simple template names the template arguments aren't embedded in the
DW_AT_name attribute of the type. The code in
FindDefinitionTypeForDWARFDeclContext was comparing the synthesized
template arguments on the leaf (most deeply nested) DIE, but was not
sufficient, as the difference get be at any level above that
(Foo<T>::Bar vs. Foo<U>::Bar). This patch makes sure we compare the
entire context.

As a drive-by I also remove the completely unnecessary
ConstStringification of the GetDIEClassTemplateParams result.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list