Douglas Gregor | 040afae | 2010-11-30 19:14:50 +0000 | [diff] [blame] | 1 | template<class T> |
2 | struct X0; | ||||
3 | |||||
4 | template<int I> | ||||
5 | struct X1; | ||||
6 | |||||
7 | template<long I> | ||||
8 | struct X2; | ||||
9 | |||||
10 | template<typename> | ||||
11 | struct X3; | ||||
12 | |||||
13 | template<template<int I> class> | ||||
14 | struct X4; | ||||
15 | |||||
16 | template<template<int I> class> | ||||
17 | struct X5; | ||||
18 | |||||
19 | template<template<int I> class> | ||||
20 | struct X6; | ||||
Douglas Gregor | d5dc83a | 2010-12-01 01:36:18 +0000 | [diff] [blame] | 21 | |
22 | typedef int Integer; | ||||
23 | extern X0<Integer> *x0i; | ||||
24 | extern X0<float> *x0f; | ||||
25 | extern X0<double> *x0r; | ||||
26 | |||||
27 | template<> | ||||
28 | struct X0<char> { | ||||
29 | int member; | ||||
30 | }; | ||||
31 | |||||
32 | template<> | ||||
33 | struct X0<wchar_t> { | ||||
34 | float member; | ||||
35 | }; |