Index: lldb/trunk/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp =================================================================== --- lldb/trunk/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp +++ lldb/trunk/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp @@ -242,8 +242,7 @@ } } - assert(template_counter >= 0); - if (template_counter > 0) { + if (template_counter != 0) { return false; } start_position.Remove(); Index: lldb/trunk/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp =================================================================== --- lldb/trunk/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp +++ lldb/trunk/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp @@ -160,4 +160,6 @@ "selector:otherField:", context, basename)); EXPECT_FALSE(CPlusPlusLanguage::ExtractContextAndIdentifier( "abc::", context, basename)); + EXPECT_FALSE(CPlusPlusLanguage::ExtractContextAndIdentifier( + "f>", context, basename)); }