aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2005-03-21 11:53:00 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2005-03-21 11:53:00 +0000
commite1283056b23aa2cc1060abb74c5b42f102780b7b (patch)
treea4798a99e8a5358235ec4ae1305ed0aa5c001295
parent72e4661a2548a1fd0bf227ee81c38363da0e6900 (diff)
downloadgcc-e1283056b23aa2cc1060abb74c5b42f102780b7b.zip
gcc-e1283056b23aa2cc1060abb74c5b42f102780b7b.tar.gz
gcc-e1283056b23aa2cc1060abb74c5b42f102780b7b.tar.bz2
re PR c++/20461 (ICE at "class 'C' does not have any field named 'f'" error)
2005-03-21 Paolo Carlini <pcarlini@suse.de> PR c++/20461 * g++.dg/parse/crash24.C: New test. PR c++/20536 * g++.dg/parse/crash25.C: New test. 2005-03-21 Paolo Carlini <pcarlini@suse.de> PR c++/20147 * g++.dg/ext/stmtexpr4.C: New test. From-SVN: r96785
-rw-r--r--gcc/testsuite/ChangeLog13
-rw-r--r--gcc/testsuite/g++.dg/ext/stmtexpr4.C8
-rw-r--r--gcc/testsuite/g++.dg/parse/crash24.C6
-rw-r--r--gcc/testsuite/g++.dg/parse/crash25.C10
4 files changed, 37 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3f850f5..51e4506 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,16 @@
+2005-03-21 Paolo Carlini <pcarlini@suse.de>
+
+ PR c++/20461
+ * g++.dg/parse/crash24.C: New test.
+
+ PR c++/20536
+ * g++.dg/parse/crash25.C: New test.
+
+2005-03-21 Paolo Carlini <pcarlini@suse.de>
+
+ PR c++/20147
+ * g++.dg/ext/stmtexpr4.C: New test.
+
2005-03-20 Roger Sayle <roger@eyesopen.com>
PR middle-end/20539
diff --git a/gcc/testsuite/g++.dg/ext/stmtexpr4.C b/gcc/testsuite/g++.dg/ext/stmtexpr4.C
new file mode 100644
index 0000000..a37c33a
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/stmtexpr4.C
@@ -0,0 +1,8 @@
+// PR c++/20147
+// { dg-do compile }
+// { dg-options "" }
+
+void foo()
+{
+ ({x;}); // { dg-error "was not declared" }
+}
diff --git a/gcc/testsuite/g++.dg/parse/crash24.C b/gcc/testsuite/g++.dg/parse/crash24.C
new file mode 100644
index 0000000..fdc4f1e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/crash24.C
@@ -0,0 +1,6 @@
+// PR c++/20461
+// { dg-do compile }
+
+class C; // { dg-error "forward declaration" }
+
+C::C() : f() {} // { dg-error "invalid use|does not have" }
diff --git a/gcc/testsuite/g++.dg/parse/crash25.C b/gcc/testsuite/g++.dg/parse/crash25.C
new file mode 100644
index 0000000..e05ccd7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/crash25.C
@@ -0,0 +1,10 @@
+// PR c++/20536
+// Found by Wolfgang Wieser 03/2005.
+// { do-do compile }
+
+struct yyguts_t
+{
+ class TestScanner* yyextra_r; // { dg-error "forward declaration" }
+};
+
+TestScanner::TestScanner() {} // { dg-error "invalid use" }