Support: Add dwarf::getLanguage()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228458 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith
2015-02-06 22:55:13 +00:00
parent e0916cdbc4
commit 81bb18728b
3 changed files with 33 additions and 1 deletions

View File

@@ -52,4 +52,21 @@ TEST(DwarfTest, LanguageStringOnInvalid) {
EXPECT_EQ(nullptr, LanguageString(DW_LANG_hi_user));
}
TEST(DwarfTest, getLanguage) {
// A couple of valid languages.
EXPECT_EQ(DW_LANG_C89, getLanguage("DW_LANG_C89"));
EXPECT_EQ(DW_LANG_C_plus_plus_11, getLanguage("DW_LANG_C_plus_plus_11"));
EXPECT_EQ(DW_LANG_OCaml, getLanguage("DW_LANG_OCaml"));
EXPECT_EQ(DW_LANG_Mips_Assembler, getLanguage("DW_LANG_Mips_Assembler"));
// Invalid languages.
EXPECT_EQ(0u, getLanguage("DW_LANG_invalid"));
EXPECT_EQ(0u, getLanguage("DW_TAG_array_type"));
EXPECT_EQ(0u, getLanguage("something else"));
// Language range markers should not be recognized.
EXPECT_EQ(0u, getLanguage("DW_LANG_lo_user"));
EXPECT_EQ(0u, getLanguage("DW_LANG_hi_user"));
}
} // end namespace