1 2 3 4 5 6 7 8 9 10 11 12 13 14
// PR c++/108579 // { dg-do compile { target c++20 } } template<class T> struct A { A(double, char); A(int) requires requires { A(0.0, 'c'); }; A& operator=(int) requires requires { A(1.0, 'd'); }; }; int main() { A<int> a(3); a = 5; }