From: Martin v. Loewis Date: Thu, 9 Jul 1998 21:10:51 +0000 (+0000) Subject: � X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a0f95f3f49cf56a3e494139ca9fcabbcdf0536b0;p=gcc.git � 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 --- 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 00000000000..009327c3463 --- /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 +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 00000000000..cd1aaaef517 --- /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 00000000000..0272055d52c --- /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 00000000000..5a3cc701074 --- /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 00000000000..cbb6292e284 --- /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 00000000000..761656f5a69 --- /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 void g(){} +template struct B { + B(){ + f(); + } + void f() + { + g(); + } +}; +} + +template class A::B; +A::B 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 00000000000..d13b8e7063d --- /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{}; //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 00000000000..f3197be1f9d --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using4.C @@ -0,0 +1,5 @@ +//Build don't link +#include +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 00000000000..37fc6a85981 --- /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 00000000000..b770950cc64 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.ns/using6.C @@ -0,0 +1,9 @@ +//Build don't link: +#include + +namespace csp { + using namespace std; + struct X { + vector 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 00000000000..a449284a532 --- /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); +}