// PR c++/104634 // { dg-do compile { target c++20 } } // { dg-final { scan-assembler "_ZN1AIiE2f1Ev" } } // { dg-final { scan-assembler "_ZN1AIdE2f2Ev" } } // { dg-final { scan-assembler "_ZN1AIPiE2f3Ev" } } // { dg-final { scan-assembler "_ZN1AIPdE2f4Ev" } } template struct A { }; template requires __is_same(T, int) struct A { void f1() { } }; template requires __is_same(T, double) struct A { void f2() { } }; template requires __is_same(T, int) struct A { void f3() { } }; template requires __is_same(T, double) struct A { void f4() { } }; template struct A; template struct A; template struct A; template struct A;