// Test that the second foo is not considered more specialized because we don't
// compare constraints unless the template parameters and function parameters
// are equivalent (P2113)
// { dg-do compile { target c++20 } }
template <typename T> concept P = true;
template <typename T> void foo(int, T);
template <P U>        void foo(U, int);
void bar() { foo(1,2); }	// { dg-error "ambiguous" }