2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.pt / deduct1.C
blobc48fa0808b2248dd5e7ec61cd395b5dfc080b382
1 // { dg-do assemble  }
3 template<class CoordinateSystem, class MeshTag>
4 struct Mesh { };
6 struct RectGrid { };
8 struct RectMesh { };
10 struct Cartesian { };
12 template<class CS>
13 struct Mesh<CS, RectGrid> { };
15 template<class CS>
16 struct Mesh<CS, RectMesh> : public Mesh<CS, RectGrid> { };
18 template<class CS>
19 void foo(const Mesh<CS, RectGrid> &)
23 int main()
25   Mesh<Cartesian, RectMesh> m;
26   foo(m);