1// { dg-do run } 2 3// Copyright (C) 2003 Free Software Foundation, Inc. 4// Contributed by Nathan Sidwell 22 Jul 2003 <nathan@codesourcery.com> 5 6// PR 9447. Using decls in template classes. 7 8template <class T> 9struct Foo { 10 int k (float) {return 1;} 11}; 12 13struct Baz 14{ 15 int k (int) {return 2;} 16}; 17 18template <class T> 19struct Bar : public Foo<T> , Baz { 20 using Foo<T>::k; 21 using Baz::k; 22 23 int foo() 24 { 25 if (k (1.0f) != 1) 26 return 1; 27 if (k (1) != 2) 28 return 2; 29 30 return 0; 31 } 32}; 33 34int main() 35{ 36 Bar<int> bar; 37 38 return bar.foo(); 39} 40