1 BEGIN 2 template<typename T = int> struct A {}; 3 template<typename T> struct B {}; 4 template<typename T> struct C; 5 template<typename T> struct D; 6 template<typename T> struct E; 7 template<typename T = int> struct G; 8 template<typename T = int> struct H; 9 template<typename T> struct J {}; 10 template<typename T = int> struct J; 11 struct K : J<> {}; 12 template<typename T = void> struct L; 13 struct FriendL { 14 template<typename T> friend struct L; 15 }; 16 END 17