1// { dg-do assemble  }
2
3// Reported by Bruce Eckel <Bruce@EckelObjects.com>
4
5// [temp.deduct.type]
6// Make sure we treat <T> in the construct TT<T> as any type containing T.
7
8template <class T> class C
9{
10};
11
12template <class T, template <class> class TT> void f (TT<T *> &t)
13{
14}
15
16int main ()
17{
18       C<char *> c;
19       f(c);
20}
21