diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp --- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp +++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp @@ -2050,6 +2050,8 @@ break; } } + if (template_param_infos.args.empty() && template_param_infos.names.empty()) + return false; return template_param_infos.args.size() == template_param_infos.names.size(); } diff --git a/lldb/test/API/lang/cpp/complete-type-check/TestCppIsTypeComplete.py b/lldb/test/API/lang/cpp/complete-type-check/TestCppIsTypeComplete.py --- a/lldb/test/API/lang/cpp/complete-type-check/TestCppIsTypeComplete.py +++ b/lldb/test/API/lang/cpp/complete-type-check/TestCppIsTypeComplete.py @@ -47,7 +47,7 @@ # Record types without a defining declaration are not complete. self.assertPointeeIncomplete("FwdClass *", "fwd_class") self.assertPointeeIncomplete("FwdClassTypedef *", "fwd_class_typedef") - self.assertPointeeIncomplete("FwdTemplateClass<> *", "fwd_template_class") + self.assertPointeeIncomplete("FwdTemplateClass *", "fwd_template_class") # A pointer type is complete even when it points to an incomplete type. fwd_class_ptr = self.expect_expr("fwd_class", result_type="FwdClass *")