1// PR c++/13157 2 3namespace aa 4{ 5 double abs(double); 6 long double abs(long double); 7} 8 9namespace fu 10{ 11 template <class T> 12 struct X 13 {}; 14 15 template <class T> 16 X<T> test(X<T> x) 17 { 18 using ::aa::abs; 19 return abs(x); 20 } 21 22 template <class T> 23 X<T> abs(X<T>); 24 25 X<int> x; 26 X<int> z = test(x); 27} 28 29