summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/torture/pr44206.C
blob: a1dedb450ad3c6cfca32407d2bf4b2cd07df6ac3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// { dg-do compile }

template<int> struct A
{
  void foo(void(*)(A));
  void bar(void(*f)(A)) { foo(f); foo(f); }
};

template<int N> inline void FOO(A<N> a)
{
  a.foo(0);
}

extern template void FOO(A<0>);

void BAR()
{
  A<0> a;
  FOO(a);
  a.bar(FOO);
}