// { dg-do compile { target c++17_only } } // { dg-options "-fconcepts-ts" } template concept bool One() { return sizeof(T) >= 4; } template concept bool Two() { return One() && sizeof(T) >= 8; } // Check that there is no ecsacpe hatch template struct S4 { }; template struct S4 { }; // { dg-error "does not specialize" } struct one_type { char x[4]; }; // Constraints are checked even when decls are not instantiatied. S4* x4b; // { dg-error "constraint|invalid" }