Add additional DWARF 5 language constants.

This also hooks up the new C++14 language constant to be treated
the same as the other C++ language constants.

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

llvm-svn: 228386
This commit is contained in:
Bruce Mitchener 2015-02-06 06:46:52 +00:00
parent d193763f1c
commit 2ba84a6af7
4 changed files with 11 additions and 1 deletions

View File

@ -378,6 +378,8 @@ namespace lldb {
eLanguageTypeUPC = 0x0012, ///< Unified Parallel C.
eLanguageTypeD = 0x0013, ///< D.
eLanguageTypePython = 0x0014, ///< Python.
// NOTE: The below are DWARF5 constants, subject to change upon
// completion of the DWARF5 specification
eLanguageTypeOpenCL = 0x0015, ///< OpenCL.
eLanguageTypeGo = 0x0016, ///< Go.
eLanguageTypeModula3 = 0x0017, ///< Modula 3.
@ -390,6 +392,9 @@ namespace lldb {
eLanguageTypeSwift = 0x001e, ///< Swift.
eLanguageTypeJulia = 0x001f, ///< Julia.
eLanguageTypeDylan = 0x0020, ///< Dylan.
eLanguageTypeC_plus_plus_14 = 0x0021, ///< ISO C++:2014.
eLanguageTypeFortran03 = 0x0022, ///< ISO Fortran 2003.
eLanguageTypeFortran08 = 0x0023, ///< ISO Fortran 2008.
eNumLanguageTypes
} LanguageType;

View File

@ -167,6 +167,7 @@ public:
case eLanguageTypeC_plus_plus:
case eLanguageTypeC_plus_plus_03:
case eLanguageTypeC_plus_plus_11:
case eLanguageTypeC_plus_plus_14:
m_language = eLanguageTypeC_plus_plus;
break;
case eLanguageTypeObjC:

View File

@ -291,7 +291,8 @@ ItaniumABILanguageRuntime::CreateInstance (Process *process, lldb::LanguageType
// the Itanium ABI.
if (language == eLanguageTypeC_plus_plus ||
language == eLanguageTypeC_plus_plus_03 ||
language == eLanguageTypeC_plus_plus_11)
language == eLanguageTypeC_plus_plus_11 ||
language == eLanguageTypeC_plus_plus_14)
return new ItaniumABILanguageRuntime (process);
else
return NULL;

View File

@ -337,6 +337,9 @@ struct language_name_pair language_names[] =
{ "swift", eLanguageTypeSwift },
{ "julia", eLanguageTypeJulia },
{ "dylan", eLanguageTypeDylan },
{ "c++14", eLanguageTypeC_plus_plus_14 },
{ "fortran03", eLanguageTypeFortran03 },
{ "fortran08", eLanguageTypeFortran08 },
// Now synonyms, in arbitrary order
{ "objc", eLanguageTypeObjC },
{ "objc++", eLanguageTypeObjC_plus_plus }