1 // RUN: %clang_cc1 -fsyntax-only -verify %s 2 // expected-no-diagnostics 3 4 class X { 5 template <typename T> class Y {}; 6 }; 7 8 class A { 9 class B {}; 10 class C {}; 11 }; 12 13 // C++0x [temp.explicit] 14.7.2/11: 14 // The usual access checking rules do not apply to names used to specify 15 // explicit instantiations. 16 template class X::Y<A::B>; 17 18 // As an extension, this rule is applied to explicit specializations as well. 19 template <> class X::Y<A::C> {}; 20