2 // Tests partial specialization
3 template<class T> struct foo1 {};
4 template<class T, int n> struct foo1<T[n]>;
6 foo1<char[10]> baz1; // ERROR - incomplete type
8 template<class T> struct foo2 {};
9 template<class T, unsigned n> struct foo2<T[n]>;
11 foo2<char[10]> baz2; // ERROR - incomplete type
13 typedef unsigned int other1_t;
14 template<class T> struct foo3 {};
15 template<class T, other1_t n> struct foo3<T[n]>;
17 foo3<char[10]> baz3; // ERROR - incomplete type -
20 template<class T> struct foo4 {};
21 template<class T, other1_t n> struct foo4<T[n]>;
23 foo4<char[10]> baz4; // ERROR - incomplete type -