diff options
author | Giovanni Bajo <giovannibajo@libero.it> | 2003-11-14 21:41:04 +0100 |
---|---|---|
committer | Bernardo Innocenti <bernie@gcc.gnu.org> | 2003-11-14 21:41:04 +0100 |
commit | 8ffc2e370dfde7443cb3aa24d46359f5f9c60466 (patch) | |
tree | 73f66baa9b0ef1864cb092c0b831da40abaebccd /gcc/testsuite | |
parent | 584fb00b96cf6f2527330615fee9caf820cd136b (diff) | |
download | gcc-8ffc2e370dfde7443cb3aa24d46359f5f9c60466.zip gcc-8ffc2e370dfde7443cb3aa24d46359f5f9c60466.tar.gz gcc-8ffc2e370dfde7443cb3aa24d46359f5f9c60466.tar.bz2 |
re PR c++/2294 (using declaration confusion)
PR c++/2294
* g++.dg/lookup/using9.c: New test.
From-SVN: r73621
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/using9.C | 30 |
2 files changed, 35 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3e9f9fa..a8c2306 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2003-11-14 Giovanni Bajo <giovannibajo@libero.it> + + PR c++/2294 + * g++.dg/lookup/using9.c: New test. + 2003-11-14 Mark Mitchell <mark@codesourcery.com> PR c++/12762 diff --git a/gcc/testsuite/g++.dg/lookup/using9.C b/gcc/testsuite/g++.dg/lookup/using9.C new file mode 100644 index 0000000..c622675 --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/using9.C @@ -0,0 +1,30 @@ +// { dg-do compile } +// Origin: C++ Standard Draft (7.3.3/12) +// PR c++/2294: using declarations should not conflict, but only cause +// an ambiguous overload set to be created. + +namespace B { + void f(int); // { dg-error "note" } + void f(double); // { dg-error "note" } +} + +namespace C { + void f(int); // { dg-error "note" } + void f(double); // { dg-error "note" } + void f(char); // { dg-error "note" } +} + +void h() +{ + using B::f; + using C::f; + f('h'); + f(1); // { dg-error "ambiguous" } + void f(int); // { dg-error "previous using declaration" } +} + +void m() +{ + void f(int); + using B::f; // { dg-error "already declared" } +} |