[clang] Fix assertion failure during conversion function overload resolution. (PR #98671)

via cfe-commits cfe-commits at lists.llvm.org
Sun Jul 14 05:19:00 PDT 2024


================
@@ -1519,7 +1519,8 @@ bool Sema::IsAtLeastAsConstrained(NamedDecl *D1,
     auto IsExpectedEntity = [](const FunctionDecl *FD) {
       FunctionDecl::TemplatedKind Kind = FD->getTemplatedKind();
       return Kind == FunctionDecl::TK_NonTemplate ||
-             Kind == FunctionDecl::TK_FunctionTemplate;
+             Kind == FunctionDecl::TK_FunctionTemplate ||
----------------
cor3ntin wrote:

This does not seem correct as it would make the assert useless, right?

I think the cases that should be valid are TK_NonTemplate, TK_MemberSpecialization, TK_FunctionTemplateSpecialization. (ie the non-dependent cases)





https://github.com/llvm/llvm-project/pull/98671


More information about the cfe-commits mailing list