[clang] [clang] Improved diagnostics for explicit specialization/instantiation of closure type members (PR #192843)

via cfe-commits cfe-commits at lists.llvm.org
Fri May 8 06:06:34 PDT 2026


================
@@ -11134,12 +11047,24 @@ DeclResult Sema::ActOnExplicitInstantiation(Scope *S,
     TSK = TSK_ExplicitInstantiationDeclaration;
 
   Specialization->setTemplateSpecializationKind(TSK, D.getIdentifierLoc());
+
   if (Specialization->isDefined()) {
     // Let the ASTConsumer know that this function has been explicitly
     // instantiated now, and its linkage might have changed.
     Consumer.HandleTopLevelDecl(DeclGroupRef(Specialization));
-  } else if (TSK == TSK_ExplicitInstantiationDefinition)
+  } else if (TSK == TSK_ExplicitInstantiationDefinition) {
+    // C++2c [expr.prim.lambda#closure-19] A member of a closure type shall not
----------------
StefanPaulet wrote:

Did not realize that until now. Thanks for letting me know!

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


More information about the cfe-commits mailing list