[Lldb-commits] [PATCH] D85968: [lldb] Forcefully complete a type when adding nested classes

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Aug 14 05:36:04 PDT 2020


labath created this revision.
labath added reviewers: teemperor, shafik.
Herald added a project: LLDB.
labath requested review of this revision.
Herald added a subscriber: JDevlieghere.

With -flimit-debug-info, we can run into cases when we only have a class
as a declaration, but we do have a definition of a nested class. In this
case, clang will hit an assertion when adding a member to an incomplete
type (but only if it's adding a c++ class, and not C struct).

It turns out we already had code to handle a similar situation arising
in the -gmodules scenario. This extends the code to handle
-flimit-debug-info as well, and reorganizes bits of other code handling
completion of types to move functions doing similar things closer
together.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D85968

Files:
  lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
  lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
  lldb/test/Shell/SymbolFile/DWARF/DW_AT_declaration-with-children.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D85968.285633.patch
Type: text/x-patch
Size: 15007 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200814/97b89d77/attachment-0001.bin>


More information about the lldb-commits mailing list