[clang] [Sema] When checking for constraint equivalence, do not calculate satisfaction (PR #74490)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Tue Dec 5 09:14:30 PST 2023


================
@@ -4077,6 +4084,7 @@ Sema::SubstExpr(Expr *E, const MultiLevelTemplateArgumentList &TemplateArgs) {
   TemplateInstantiator Instantiator(*this, TemplateArgs,
                                     SourceLocation(),
                                     DeclarationName());
+  Instantiator.setEvaluateConstraints(false);
----------------
erichkeane wrote:

Yeah, that comment is a little out of date I think.  I initially split those two with the intent of making them do something different (and infact, almost exactly the change you made!), but ended up with a ton of test failures, particularly in libc++ for a while.

I think i ended up picking up most/all of those tests as lit tests during my implementation, but I'm not confident in it enough to have us merge this before the release branch next month.

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


More information about the cfe-commits mailing list