Skip to content

Commit c5de928

Browse files
committed
Add more tests
1 parent 273ba46 commit c5de928

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

lldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,3 +410,20 @@ TEST(CPlusPlusLanguage, DoesNotMatchCxx) {
410410
Mangled swiftSymbol("$sS");
411411
EXPECT_FALSE(CPlusPlusLang->SymbolNameFitsToLanguage(swiftSymbol));
412412
}
413+
414+
TEST(CPlusPlusLanguage, MatchesCxx) {
415+
// Test that a symbol name that is C++ does match C++ (both Itanium and MSVC).
416+
417+
SubsystemRAII<CPlusPlusLanguage> lang;
418+
Language *CPlusPlusLang =
419+
Language::FindPlugin(lldb::eLanguageTypeC_plus_plus);
420+
421+
EXPECT_TRUE(CPlusPlusLang != nullptr);
422+
423+
Mangled itaniumSymbol("_ZFoo");
424+
EXPECT_TRUE(CPlusPlusLang->SymbolNameFitsToLanguage(itaniumSymbol));
425+
Mangled itaniumExtensionSymbol("___ZBar");
426+
EXPECT_TRUE(CPlusPlusLang->SymbolNameFitsToLanguage(itaniumExtensionSymbol));
427+
Mangled msvcSymbol("?Baz");
428+
EXPECT_TRUE(CPlusPlusLang->SymbolNameFitsToLanguage(msvcSymbol));
429+
}

0 commit comments

Comments
 (0)