1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
// PR c++/48884 class X { static const int I = 42; friend struct Y; }; template <int I> struct A { }; struct Y { template <typename T> static A<T::I> f(T t) { return A<T::I>(); } }; int main() { Y::f(X()); }