Tweak my fix for PR8748, and update the incorrect PR number in the test case.
llvm-svn: 124863
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 88c3a77..9db6814 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -3972,7 +3972,8 @@
? TPC_FriendFunctionTemplateDefinition
: TPC_FriendFunctionTemplate)
: (D.getCXXScopeSpec().isSet() &&
- DC && DC->isRecord())
+ DC && DC->isRecord() &&
+ DC->isDependentContext())
? TPC_ClassTemplateMember
: TPC_FunctionTemplate);
}
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index e867354..88ba3f9 100644
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -947,7 +947,8 @@
if (CheckTemplateParameterList(TemplateParams,
PrevClassTemplate? PrevClassTemplate->getTemplateParameters() : 0,
(SS.isSet() && SemanticContext &&
- SemanticContext->isRecord())
+ SemanticContext->isRecord() &&
+ SemanticContext->isDependentContext())
? TPC_ClassTemplateMember
: TPC_ClassTemplate))
Invalid = true;