summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2011-10-28 21:00:00 +0000
committerGreg Clayton <gclayton@apple.com>2011-10-28 21:00:00 +0000
commitd4436412913ba2a00ae2772402cd03c3028fef21 (patch)
tree46f8042707d3bd562241fbbfd43a466dae268f74 /lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
parent07ae229048f20422705c54be86b7a4a05c13fb96 (diff)
downloadbcm5719-llvm-d4436412913ba2a00ae2772402cd03c3028fef21.tar.gz
bcm5719-llvm-d4436412913ba2a00ae2772402cd03c3028fef21.zip
Added support for the C++Ox "nullptr_t" type.
llvm-svn: 143225
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
index 52eb0913cb4..1e2a57231a7 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
@@ -3808,6 +3808,7 @@ SymbolFileDWARF::ParseType (const SymbolContext& sc, DWARFCompileUnit* dwarf_cu,
case DW_TAG_const_type:
case DW_TAG_restrict_type:
case DW_TAG_volatile_type:
+ case DW_TAG_unspecified_type:
{
// Set a bit that lets us know that we are currently parsing this
m_die_to_type[die] = DIE_IS_BEING_PARSED;
@@ -3861,6 +3862,15 @@ SymbolFileDWARF::ParseType (const SymbolContext& sc, DWARFCompileUnit* dwarf_cu,
default:
break;
+ case DW_TAG_unspecified_type:
+ if (strcmp(type_name_cstr, "nullptr_t") == 0)
+ {
+ resolve_state = Type::eResolveStateFull;
+ clang_type = ast.getASTContext()->NullPtrTy.getAsOpaquePtr();
+ break;
+ }
+ // Fall through to base type below in case we can handle the type there...
+
case DW_TAG_base_type:
resolve_state = Type::eResolveStateFull;
clang_type = ast.GetBuiltinTypeForDWARFEncodingAndBitSize (type_name_cstr,
OpenPOWER on IntegriCloud