[libcxx-commits] [clang] [libcxx] [Clang] Normalize constraints before checking for satisfaction (PR #161671)
Arthur Eubanks via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Oct 17 16:06:12 PDT 2025
aeubanks wrote:
finally, here's the reduced repro @zyn0217
```
$ cat /tmp/a.cc
template <typename>
concept a = requires { requires true; };
template <typename T>
concept b = a<typename T::EntitySpec>;
template <typename T>
concept c = requires { b<T>; };
template <typename T>
requires c<T>
struct s;
template <typename> void f();
template <typename T> constexpr bool d = f<T>;
struct s2;
static_assert(d<s<s2>>);
$ clang++ -fsyntax-only /tmp/a.cc -std=c++20
Should not have a NULL template argument
UNREACHABLE executed at ../../clang/lib/AST/TemplateBase.cpp:265!
```
https://github.com/llvm/llvm-project/pull/161671
More information about the libcxx-commits
mailing list