sl@0: /* sl@0: * It is known that this code not compiled by following compilers: sl@0: * sl@0: * It is known that this code compiled by following compilers: sl@0: * gcc 2.95.3 sl@0: * gcc 3.3.3 sl@0: * gcc 3.4.1 sl@0: * MSVC 6 sl@0: * MSVC 8 sl@0: */ sl@0: sl@0: struct A sl@0: { sl@0: private: sl@0: struct B sl@0: { sl@0: template <typename T> sl@0: static void f( T& ) {} sl@0: sl@0: template <bool V> sl@0: struct C sl@0: { sl@0: }; sl@0: }; sl@0: }; sl@0: sl@0: template <> sl@0: struct A::B::C<true> sl@0: { sl@0: }; sl@0: