diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/local.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/local.C | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/local.C b/gcc/testsuite/g++.old-deja/g++.jason/local.C new file mode 100644 index 000000000..21fa9f587 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.jason/local.C @@ -0,0 +1,21 @@ +// { dg-do assemble } +// General testcase for local classes. + +int x; +void f () +{ + static int s; + int x; // { dg-error "" } referenced below + extern int q(); + + struct local { + int g() { return x; } // { dg-error "" } automatic variable + int h() { return s; } // { dg-bogus "" } local class + int k() { return ::x; } // OK + int l() { return q(); } // OK + int m(); // OK - not defined + static int foo; // { dg-error "" } static data member of local class + }; +} + +local* p = 0; // { dg-error "" } no such type in scope |