blob: cdd1465d010eea536ee9480221bc5b3e565d09d4 [file] [log] [blame]
// P0634R3
// { dg-do compile { target c++20 } }
namespace N {
// template<typename T> extern T::type v; // #1a
template<typename T> T::type v(typename T::value); // #1b
}
template<typename T> T::type N::v(T::value); // #2
namespace N2 {
template<typename T> extern T::type v; // #1a
//template<typename T> T::type v(typename T::value); // #1b
}
template<typename T> T::type N2::v(T::value);
namespace A {
inline namespace B { template<typename T> int f(typename T::foo); }
inline namespace C { template<typename T> extern int f; }
}
template<typename T> int A::f(T::foo); // { dg-error "ambiguous" }