[all-commits] [llvm/llvm-project] c3b870: [Clang] Fail the constraint substitution early aft...

Younan Zhang via All-commits all-commits at lists.llvm.org
Fri Jun 6 04:14:23 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c3b870eb3f4fb15403b49a976aea860e6da9084e
      https://github.com/llvm/llvm-project/commit/c3b870eb3f4fb15403b49a976aea860e6da9084e
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-06-06 (Fri, 06 Jun 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Fail the constraint substitution early after CWG2369 (#143096)

CWG2369 revealed another case where we were SFINAE'ing out the invalid
result of substitution, but the expression now makes the way into evaluation.

We switch to the concept specialization's context before we check it.
This ensures that we're able to realize the invalid expression earlier,
so we can avoid evaluating invalid expression, which is a hard error.

This also fixes #115838



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list