llvm-project/lldb/source/Plugins/SymbolFile/DWARF
Siva Chandra 89ce955a32 Make array symbol reading resilient to incomplete DWARF.
Summary:
GCC emits DW_TAG_subrange_type for static member arrays, but with no
attributes. This in turn results in wrong type/value of the array when
printing with 'target variable <array var name>'. This patch fixes this
so that the array value is printed in this format:

    (<element type> []) <array var name> = {}

Earlier, the array was being interpreted to be of its element type.

Note: This does not fix anything to do with 'expr' or 'p' commands.
Those commands still error out complaining about incomplete types.

Test Plan: dotest.py -p TestStaticVariables

Reviewers: emaste, clayborg

Reviewed By: clayborg

Subscribers: lldb-commits

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

llvm-svn: 225219
2015-01-05 23:06:14 +00:00
..
CMakeLists.txt Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFAbbreviationDeclaration.cpp DWARF64 Fixes 2014-09-11 17:29:12 +00:00
DWARFAbbreviationDeclaration.h Remove unused code. 2014-03-07 21:51:19 +00:00
DWARFAttribute.h Fix a bunch of compile time warnings and a build failure on ubuntu. 2013-08-30 17:50:57 +00:00
DWARFCompileUnit.cpp Fixed an issue where a DW_FORM_ref{2,4,8} might be extracted incorrectly because the wrong compile unit was being used to calculate the compile unit relative offset. 2014-11-22 01:58:59 +00:00
DWARFCompileUnit.h DWARF64 Fixes 2014-09-11 17:29:12 +00:00
DWARFDIECollection.cpp
DWARFDIECollection.h
DWARFDataExtractor.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDataExtractor.h DWARF64 Fixes 2014-09-11 17:29:12 +00:00
DWARFDebugAbbrev.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugAbbrev.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugArangeSet.cpp Don’t crash when we get an invalid .debug_aranges set, just ignore it. Also print out warning messages if LLDB_CONFIGURATION_DEBUG is defined. 2014-04-04 17:53:30 +00:00
DWARFDebugArangeSet.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugAranges.cpp sweep up -Wformat warnings from gcc 2014-04-04 04:06:10 +00:00
DWARFDebugAranges.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugInfo.cpp It's possible for this function to not be passed a CompUnit*; add 2014-10-16 01:21:25 +00:00
DWARFDebugInfo.h After discussing with Chris Lattner, we require C++11, so lets get rid of the macros and just use C++11. 2013-04-18 22:45:39 +00:00
DWARFDebugInfoEntry.cpp Audit uses of ConstString::AsCString() to make sure they weren't assuming 2014-12-19 19:20:44 +00:00
DWARFDebugInfoEntry.h Xcode 5 crashes if lldb stops at breakpoint if long c++ template lists are present. 2014-04-04 18:15:18 +00:00
DWARFDebugLine.cpp dwarf: add dwarf v4 maximum_operations_per_instruction to DWARFDebugLine. 2014-09-29 23:11:09 +00:00
DWARFDebugLine.h dwarf: add dwarf v4 maximum_operations_per_instruction to DWARFDebugLine. 2014-09-29 23:11:09 +00:00
DWARFDebugMacinfo.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugMacinfo.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugMacinfoEntry.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugMacinfoEntry.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugPubnames.cpp DWARF64 Fixes 2014-09-11 17:29:12 +00:00
DWARFDebugPubnames.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugPubnamesSet.cpp Update DWARFDebugPubnamesSet 64-bit DWARF to use new DWARFDataExtractor 2013-10-25 13:18:17 +00:00
DWARFDebugPubnamesSet.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDebugRanges.cpp Fix typos. 2014-07-08 18:05:41 +00:00
DWARFDebugRanges.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFDeclContext.cpp Fix typos. 2014-07-08 18:05:41 +00:00
DWARFDeclContext.h Made all other "operator bool"s explicit and ensured 2013-10-04 21:35:29 +00:00
DWARFDefines.cpp
DWARFDefines.h Cleanup/rearrange includes: 2013-08-28 12:14:27 +00:00
DWARFFormValue.cpp Fixed an issue where a DW_FORM_ref{2,4,8} might be extracted incorrectly because the wrong compile unit was being used to calculate the compile unit relative offset. 2014-11-22 01:58:59 +00:00
DWARFFormValue.h Fixed an issue where a DW_FORM_ref{2,4,8} might be extracted incorrectly because the wrong compile unit was being used to calculate the compile unit relative offset. 2014-11-22 01:58:59 +00:00
DWARFLocationDescription.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFLocationDescription.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFLocationList.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
DWARFLocationList.h Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
HashedNameToDIE.h Fixed an issue where a DW_FORM_ref{2,4,8} might be extracted incorrectly because the wrong compile unit was being used to calculate the compile unit relative offset. 2014-11-22 01:58:59 +00:00
LogChannelDWARF.cpp Fix typos. 2014-07-08 18:05:41 +00:00
LogChannelDWARF.h <rdar://problem/13854277> 2013-05-10 21:47:16 +00:00
Makefile
NameToDIE.cpp Introduce DWARFDataExtractor for 64-Bit DWARF parsing 2013-10-24 20:43:47 +00:00
NameToDIE.h Added the ability to get a list of types from a SBModule or SBCompileUnit. Sebastien Metrot wanted this, and sent a hollowed out patch. I filled in the blanks and did the low level implementation. The new functions are: 2013-06-18 22:51:05 +00:00
SymbolFileDWARF.cpp Make array symbol reading resilient to incomplete DWARF. 2015-01-05 23:06:14 +00:00
SymbolFileDWARF.h Remove dead code from SymbolFileDWARF: 2014-12-04 18:49:24 +00:00
SymbolFileDWARFDebugMap.cpp Cleanup the iOS simulator code. 2014-07-10 23:33:37 +00:00
SymbolFileDWARFDebugMap.h Fix typos. 2014-07-01 21:22:11 +00:00
UniqueDWARFASTType.cpp Fix segfault in UniqueDWARFASTTypeList::Find if we are comparing 2011-10-01 01:28:37 +00:00
UniqueDWARFASTType.h