diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/overload10.C')
-rwxr-xr-x | gcc/testsuite/g++.old-deja/g++.jason/overload10.C | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload10.C b/gcc/testsuite/g++.old-deja/g++.jason/overload10.C new file mode 100755 index 0000000..cd18382 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload10.C @@ -0,0 +1,22 @@ +// PRMS Id: 4257 (second bug) +// Bug: g++ fails to recognize multiple previous instantiations of a function +// template. +// Build don't link: +// Special g++ Options: -fguiding-decls + +template <class T> +class A { + int i; + + friend int foo (A<T>&); +}; + +template <class T> int foo (A<T>& a) { return a.i; } + +A<int> a; +A<char> dummy; + +void bar () +{ + foo (a); // gets bogus error - two foo(A<int>&)'s +} |