[clang] [Clang] Fix ICE in constraint normalization when substituting concept template parameters (PR #184406)

Younan Zhang via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 4 09:03:21 PST 2026


================
@@ -4481,11 +4481,39 @@ ExprResult Sema::SubstConceptTemplateArguments(
 
     ExprResult TransformUnresolvedLookupExpr(UnresolvedLookupExpr *E,
                                              bool IsAddressOfOperand = false) {
-      if (E->isConceptReference()) {
-        ExprResult Res = SemaRef.SubstExpr(E, MLTAL);
-        return Res;
-      }
-      return E;
+      if (!E->isConceptReference())
+        return E;
+
+      NamedDecl *D = *E->decls_begin();
----------------
zyn0217 wrote:

There is [getNumDecls](https://clang.llvm.org/doxygen/classclang_1_1OverloadExpr.html#a6d0bd43ef3d842095f12fc4388a9f922) which is helpful

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


More information about the cfe-commits mailing list