// RUN: %clang_cc1 -std=c++2a -x c++ %s -verify
static_assert;
requires requires // expected-note{{because 'false' evaluated to false}}
;
using r1i = r1<int>; // expected-error{{constraints not satisfied for class template 'r1' [with T = int]}}
requires requires // expected-note{{because 'sizeof(int) == 0' (4 == 0) evaluated to false}}
;
using r2i = r2<int>; // expected-error{{constraints not satisfied for class template 'r2' [with T = int]}}
requires // expected-note{{because 'sizeof (t) == 0' (4 == 0) evaluated to false}}
;
using r3i = r3<int>; // expected-error{{constraints not satisfied for class template 'r3' [with T = int]}}
;
using r4i = X<void>::r4<int>; // expected-error{{constraints not satisfied for class template 'r4' [with U = int]}}
// C++ [expr.prim.req.nested] Examples