diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.other/decl6.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.other/decl6.C | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl6.C b/gcc/testsuite/g++.old-deja/g++.other/decl6.C new file mode 100644 index 000000000..40247b81e --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/decl6.C @@ -0,0 +1,26 @@ +// { dg-do assemble } +// +// Copyright (C) 1999 Free Software Foundation, Inc. +// Contributed by Nathan Sidwell 27 Sep 1999 <nathan@acm.org> + +int j(); +struct B {}; +struct A +{ + friend explicit int j(); // { dg-error "" } only ctor decls can be explicit + friend explicit B::B (); // { dg-error "" } only ctor decls can be explicit + int f(const); // { dg-error "" } ansi forbids no type + const k; // { dg-error "" } ansi forbids no type + mutable friend int j1 (); // { dg-error "" } non-member cannot be mutable + mutable typedef int d; // { dg-error "" } non-object cannot be mutable + mutable int fn (); // { dg-error "" } non-object cannot be mutable + void fn (mutable int); // { dg-error "" } non-member cannot be mutable + mutable static int s; // { dg-error "" } static cannot be mutable + mutable const int s1; // { dg-error "" } const cannot be mutable + mutable const int *s2; // ok + mutable int *const s3; // { dg-error "" } const cannot be mutable + explicit A (); // ok +}; +mutable int g; // { dg-error "" } non-member cannot be mutable +explicit A::A () {} // { dg-error "" } only ctor decls can be explicit + |