[Lldb-commits] [PATCH] D20395: Remove m_decl_objects and look up variables for ComiplerDecls directly

Sean Callanan via lldb-commits lldb-commits at lists.llvm.org
Wed May 18 16:00:41 PDT 2016


spyffe created this revision.
spyffe added reviewers: paulherman, sivachandra, jingham.
spyffe added a subscriber: lldb-commits.
spyffe set the repository for this revision to rL LLVM.

`m_decl_objects` is not sound when there are multiple instances of an inline function.  The reason is that the `clang::FunctionDecl` is unique to the single abstract origin of all the inlined instances, and has one set of unique variables, but the `VariableSP` is different for each inlined instance.

The map `m_decl_objects` was introduced by LLDB r247746 which introduced a test case with some namespace lookups.  I am putting this up for review to make sure that this fix (which works fine with that test case) also doesn't break anything else that might have been addressed by `m_decl_objects`.

Repository:
  rL LLVM

http://reviews.llvm.org/D20395

Files:
  include/lldb/Symbol/ClangASTContext.h
  include/lldb/Symbol/CompilerDecl.h
  include/lldb/Symbol/GoASTContext.h
  include/lldb/Symbol/JavaASTContext.h
  include/lldb/Symbol/TypeSystem.h
  source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
  source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
  source/Symbol/ClangASTContext.cpp
  source/Symbol/CompilerDecl.cpp
  source/Symbol/JavaASTContext.cpp
  source/Symbol/Variable.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20395.57699.patch
Type: text/x-patch
Size: 7959 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20160518/2ec0b650/attachment.bin>


More information about the lldb-commits mailing list