diff options
author | Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de> | 1998-07-09 21:10:51 +0000 |
---|---|---|
committer | Robert Lipe <robertl@gcc.gnu.org> | 1998-07-09 21:10:51 +0000 |
commit | a0f95f3f49cf56a3e494139ca9fcabbcdf0536b0 (patch) | |
tree | 4d49be6898677722b1fa1b4c89dfe1afd22b8023 | |
parent | b458ba78ae79060cd5bc83db14da735e5f7ba9b0 (diff) | |
download | gcc-a0f95f3f49cf56a3e494139ca9fcabbcdf0536b0.zip gcc-a0f95f3f49cf56a3e494139ca9fcabbcdf0536b0.tar.gz gcc-a0f95f3f49cf56a3e494139ca9fcabbcdf0536b0.tar.bz2 |
�
From Martin Von Loewis.
* g++.ns/{alias2.C, alias5.C, koenig4.C, lookup3.C ns13.C,
ns14.C, ns15.C, template3.C, undef1.C, using4.C, using5.C,
using6.C, using7.C}: New namespace tests.
From-SVN: r21043
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/koenig4.C | 24 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/lookup3.C | 14 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/ns13.C | 13 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/ns14.C | 16 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/ns15.C | 2 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/template3.C | 21 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/undef1.C | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/using4.C | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/using5.C | 6 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/using6.C | 9 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ns/using7.C | 11 |
11 files changed, 126 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C new file mode 100644 index 0000000..009327c --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C @@ -0,0 +1,24 @@ +void f(); +void f(int); + +namespace A{ + struct S{ + void f(); + void f(S); + }; + void f(S&){} + void h(S&){} +} + +template<class T> +void g(T t){ + f(t); +} + +int main() +{ + A::S s; + f(s); + g(s); + h(s); +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C new file mode 100644 index 0000000..cd1aaae --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C @@ -0,0 +1,14 @@ +namespace A{ + int i; + int f(); +} + +int A::f() +{ + return i; +} + +main() +{ + return A::f(); +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns13.C b/gcc/testsuite/g++.old-deja/g++.ns/ns13.C new file mode 100644 index 0000000..0272055 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns13.C @@ -0,0 +1,13 @@ +namespace std{ + void f(){} + void g(); + int i=5; +} + +void std::g() +{} + +main() +{ + return std::i-5; +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns14.C b/gcc/testsuite/g++.old-deja/g++.ns/ns14.C new file mode 100644 index 0000000..5a3cc70 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns14.C @@ -0,0 +1,16 @@ +//Special g++ Options: -fhonor-std +namespace std{ + int f(){ + return 0; + } +} + +int f() +{ + return 1; +} + +int main() +{ + return std::f(); +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns15.C b/gcc/testsuite/g++.old-deja/g++.ns/ns15.C new file mode 100644 index 0000000..cbb6292 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns15.C @@ -0,0 +1,2 @@ +//Build don't link: +namespace std {} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template3.C b/gcc/testsuite/g++.old-deja/g++.ns/template3.C new file mode 100644 index 0000000..761656f --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/template3.C @@ -0,0 +1,21 @@ +//Check instantiation of templates outside their namespace +namespace A{ +template <class T>void g(){} +template <class T> struct B { + B(){ + f(); + } + void f() + { + g<T>(); + } +}; +} + +template class A::B<int>; +A::B<int> s; + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/undef1.C b/gcc/testsuite/g++.old-deja/g++.ns/undef1.C new file mode 100644 index 0000000..d13b8e7 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/undef1.C @@ -0,0 +1,5 @@ +//Build don't link: +namespace A{ +} + +struct Y: A::S<int>{}; //ERROR - no such type diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using4.C b/gcc/testsuite/g++.old-deja/g++.ns/using4.C new file mode 100644 index 0000000..f3197be --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using4.C @@ -0,0 +1,5 @@ +//Build don't link +#include <vector> +namespace csp { +using namespace std::vector; // ERROR - vector is not a namespace +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using5.C b/gcc/testsuite/g++.old-deja/g++.ns/using5.C new file mode 100644 index 0000000..37fc6a8 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using5.C @@ -0,0 +1,6 @@ +// Build don't link: +namespace a { + class b { + using std::c; //ERROR - namespace using on class level + }; +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using6.C b/gcc/testsuite/g++.old-deja/g++.ns/using6.C new file mode 100644 index 0000000..b770950 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using6.C @@ -0,0 +1,9 @@ +//Build don't link: +#include <vector> + +namespace csp { + using namespace std; + struct X { + vector<int> v; + }; +} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using7.C b/gcc/testsuite/g++.old-deja/g++.ns/using7.C new file mode 100644 index 0000000..a449284 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using7.C @@ -0,0 +1,11 @@ +namespace X{ + void f(int){} +} + +void f(); + +int main() +{ + using X::f; + f(3); +} |