blob: 32ae1e121748bb3073cf804be8fc1018ef549cdc [file] [log] [blame]
// { dg-do compile { target c++20 } }
template<class T>
struct A { static const bool value = T::value; };
template<class T>
void f() {
// Verify we don't substitute into a lambda's constraints when
// regenerating it, which would lead to a hard error here.
[] () requires (T::value && A<T>::value) || true { }();
[] <class U> (U) requires (U::value && A<T>::value) || true { }(0);
}
template void f<int>();