[Lldb-commits] [lldb] r275164 - Dwarf parser: don't lookup void typedefs in the DWO

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Tue Jul 12 02:26:30 PDT 2016


Author: labath
Date: Tue Jul 12 04:26:30 2016
New Revision: 275164

URL: http://llvm.org/viewvc/llvm-project?rev=275164&view=rev
Log:
Dwarf parser: don't lookup void typedefs in the DWO

Summary:
void typedefs do not have a DW_AT_type attribute, so we end up with an empty encoding_uid
variable. These don't need to be looked up and trying to look that will assert in a debug build.

Reviewers: clayborg

Subscribers: lldb-commits, tberghammer

Differential Revision: http://reviews.llvm.org/D22218

Modified:
    lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp?rev=275164&r1=275163&r2=275164&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp Tue Jul 12 04:26:30 2016
@@ -328,7 +328,7 @@ DWARFASTParserClang::ParseTypeFromDWARF
                         }
                     }
 
-                    if (tag == DW_TAG_typedef)
+                    if (tag == DW_TAG_typedef && encoding_uid.IsValid())
                     {
                         // Try to parse a typedef from the DWO file first as modules
                         // can contain typedef'ed structures that have no names like:




More information about the lldb-commits mailing list