summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/koenig3.C
blob: f90059d653b73eac2c0a8171cfa70d651570924e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// PR c++/13157

namespace aa
{
  double abs(double);
  long double abs(long double);
}

namespace fu
{
  template <class T>
  struct X
  {};
  
  template <class T>
  X<T> test(X<T> x)
  {
    using ::aa::abs;
    return abs(x);
  }
  
  template <class T>
  X<T> abs(X<T>);
  
  X<int> x;
  X<int> z = test(x);
}