[SymbolFilePDB] Add missing Char16 and Char32 types in a few places
Reviewers: zturner, rnk, lldb-commits
Subscribers: clayborg, llvm-commits
Differential Revision: https://reviews.llvm.org/D44166
llvm-svn: 326875
diff --git a/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp b/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
index 9761bae..bf353a4 100644
--- a/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
+++ b/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
@@ -59,6 +59,8 @@
case PDB_BuiltinType::Int:
case PDB_BuiltinType::Long:
case PDB_BuiltinType::Char:
+ case PDB_BuiltinType::Char16:
+ case PDB_BuiltinType::Char32:
return lldb::eEncodingSint;
case PDB_BuiltinType::Bool:
case PDB_BuiltinType::UInt:
@@ -126,6 +128,10 @@
if (width == ast->getTypeSize(ast->WCharTy))
return CompilerType(ast, ast->WCharTy);
break;
+ case PDB_BuiltinType::Char16:
+ return CompilerType(ast, ast->Char16Ty);
+ case PDB_BuiltinType::Char32:
+ return CompilerType(ast, ast->Char32Ty);
case PDB_BuiltinType::Float:
// Note: types `long double` and `double` have same bit size in MSVC and there
// is no information in the PDB to distinguish them. So when falling back
@@ -162,6 +168,10 @@
return ConstString("HRESULT");
case PDB_BuiltinType::BCD:
return ConstString("BCD");
+ case PDB_BuiltinType::Char16:
+ return ConstString("char16_t");
+ case PDB_BuiltinType::Char32:
+ return ConstString("char32_t");
case PDB_BuiltinType::None:
return ConstString("...");
}