1040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<class T>
2040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X0;
3040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
4040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<int I>
5040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X1;
6040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
7040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<long I>
8040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X2;
9040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
10040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<typename>
11040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X3;
12040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
13040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<template<int I> class>
14040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X4;
15040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
16040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<template<int I> class>
17040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X5;
18040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregor
19040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregortemplate<template<int I> class>
20040afaeea2313dc69fd532995ac88cccdd62da56Douglas Gregorstruct X6;
21d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor
22d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregortypedef int Integer;
23d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregorextern X0<Integer> *x0i;
24d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregorextern X0<float> *x0f;
25d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregorextern X0<double> *x0r;
26d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor
27d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregortemplate<>
28d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregorstruct X0<char> {
29d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor  int member;
30d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor};
31d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor
32d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregortemplate<>
33d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregorstruct X0<wchar_t> {
34d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor  float member;
35d5dc83a85c1b9aa32f8262126183df5d71c357aeDouglas Gregor};
36