<rdar://problem/12582031>
authorGreg Clayton <gclayton@apple.com>
Tue, 6 Nov 2012 00:20:41 +0000 (00:20 +0000)
committerGreg Clayton <gclayton@apple.com>
Tue, 6 Nov 2012 00:20:41 +0000 (00:20 +0000)
commit88bc7f35b844131bcc5548db32cb269f5558da9b
treeb2a0943bea63dc0aaf63a57579fcff492e71e40d
parentd612566385cb20fb867af6d8d6e0c5f138a963d7
<rdar://problem/12582031>

Unnamed bitfields cause struct layout problems

Synthesize unnamed bitfields when required. Most compilers don't mention unnamed bitfields in the DWARF, so we need to create them to keep clang happy with the types we create from the DWARF. We currently can't do this for ObjC since the DW_AT_bit_offset value for any direct ivars of ObjC classes as the values for these attributes are bogus. A bug has been filed on Clang to fix this, and another bug has been filed on LLDB to make sure we fix the DWARF parser once the clang fix is in by looking the the DW_AT_producer in the compile unit attributes and finding the compiler version and only enabling it for newer versions of clang.

llvm-svn: 167424
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
lldb/source/Symbol/ClangASTContext.cpp