aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2000-11-28 10:31:09 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2000-11-28 10:31:09 +0000
commitbb92901dc0ff3fbdb21532566a4f46d197fd55e6 (patch)
tree6d5658cba4a32592b02ffd5c3b7cf207e789b6be /gcc/testsuite
parent2f3608c33e4b7787fb460981463958df9caf387e (diff)
downloadgcc-bb92901dc0ff3fbdb21532566a4f46d197fd55e6.zip
gcc-bb92901dc0ff3fbdb21532566a4f46d197fd55e6.tar.gz
gcc-bb92901dc0ff3fbdb21532566a4f46d197fd55e6.tar.bz2
parse.y (base_class.1): Produce a _TYPE not a _DECL.
cp: * parse.y (base_class.1): Produce a _TYPE not a _DECL. * semantics.c (finish_base_specifier): Accept a _TYPE not a _DECL. testsuite: * g++.old-deja/g++.other/base1.C: New test. From-SVN: r37817
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/base1.C20
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 06f689b..f60af3f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2000-11-28 Nathan Sidwell <nathan@codesourcery.com>
+ * g++.old-deja/g++.other/base1.C: New test.
+
+2000-11-28 Nathan Sidwell <nathan@codesourcery.com>
+
* g++.old-deja/g++.other/parse2.C: New test.
2000-11-28 Nathan Sidwell <nathan@codesourcery.com>
diff --git a/gcc/testsuite/g++.old-deja/g++.other/base1.C b/gcc/testsuite/g++.old-deja/g++.other/base1.C
new file mode 100644
index 0000000..ace821c
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.other/base1.C
@@ -0,0 +1,20 @@
+// Build don't link:
+
+// Copyright (C) 2000 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 25 Nov 2000 <nathan@codesourcery.com>
+
+// We lost information about which base wasn't an aggregate type, plus we
+// allowed cv qualifed bases via typedefs.
+
+typedef int I;
+typedef int cI;
+
+struct A {};
+
+typedef const A cA;
+typedef A pA;
+
+struct B : I {}; // ERROR - not an aggregate
+struct C : cI {}; // ERROR - not an aggregate
+struct D : cA {}; // ERROR - cv qualified
+struct E : pA {};