// { dg-do compile { target c++23 } } template struct A { A(T); }; template struct B : A { using B::A::A; // FIXME: we don't notice this inherited ctor }; using ty1 = decltype(B(0)); // { dg-bogus "" "" { xfail *-*-* } } using ty1 = B; template struct C : A { using A::A; }; using ty2 = decltype(C(0)); using ty2 = C; template struct D : A { using A::A; }; using ty3 = decltype(D(0)); using ty3 = D; A(int) -> A; // FIXME: we need to rebuild the guides of D using ty4 = decltype(D(0)); using ty4 = D; // { dg-bogus "conflicting" "" { xfail *-*-* } }