1// { dg-do compile }
2
3// Copyright (C) 2003 Free Software Foundation, Inc.
4// Contributed by Nathan Sidwell 27 Jul 2003 <nathan@codesourcery.com>
5
6// Failed to spot specialization using a template-id expr
7
8template <int n> class A {};
9template <int m> class R {};
10
11template <int n, int x> struct Trait { enum {m = n}; };
12
13template <int n, int x> R<Trait<n,x>::m> f(A<x>);
14template <> R<Trait<1,1>::m> f<1>(A<1>) {return R<1>();}
15
16void Baz ()
17{
18  R<Trait<1,1>::m> (*ptr) (A<1>);
19
20  ptr = &f<1>;
21
22}
23