[all-commits] [llvm/llvm-project] c0ac25: [lldb] Fix simple template names interaction with ...

aeubanks via All-commits all-commits at lists.llvm.org
Thu Dec 8 09:41:22 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c0ac25f1acc4dae97f420cd6bdf1c00c632563f1
      https://github.com/llvm/llvm-project/commit/c0ac25f1acc4dae97f420cd6bdf1c00c632563f1
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2022-12-08 (Thu, 08 Dec 2022)

  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
    A lldb/test/API/lang/cpp/unique-types3/Makefile
    A lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py
    A lldb/test/API/lang/cpp/unique-types3/a.cpp
    A lldb/test/API/lang/cpp/unique-types3/a.h
    A lldb/test/API/lang/cpp/unique-types3/main.cpp

  Log Message:
  -----------
  [lldb] Fix simple template names interaction with debug info declarations

Without checking template parameters, we would sometimes lookup the
wrong type definition for a type declaration because different
instantiations of the same template class had the same debug info name.

The added GetForwardDeclarationDIETemplateParams() shouldn't need a
cache because we'll cache the results of the declaration -> definition
lookup anyway. (DWARFASTParserClang::ParseStructureLikeDIE()
is_forward_declaration branch)

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D138834




More information about the All-commits mailing list