// PR c++/104594 // { dg-do compile { target c++20 } } template concept Geometry = (DIM_FROM == -1); template requires Geometry auto GaussNewton(const INIT& init) -> void {} template struct X { static constexpr int n = N; }; int main() { GaussNewton(X<-1>{}); } // { dg-error "no match|narrowing" }