add expr/decl ambiguity test
authorBrendan Kehoe <brendan@gcc.gnu.org>
Tue, 18 Aug 1998 15:11:05 +0000 (11:11 -0400)
committerBrendan Kehoe <brendan@gcc.gnu.org>
Tue, 18 Aug 1998 15:11:05 +0000 (11:11 -0400)
From-SVN: r21825

gcc/testsuite/g++.old-deja/g++.brendan/parse3.C [new file with mode: 0644]

diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C
new file mode 100644 (file)
index 0000000..c346a28
--- /dev/null
@@ -0,0 +1,22 @@
+// Build don't link: 
+
+// these are marked as expected errors because they evidence an
+// ambiguity in the grammar between expressions and declarations.
+// when the parser's been cleaned up or rewritten, these two error
+// markers can go away, since they'll no longer occur.
+
+class A
+{
+  public:
+    int high;
+    unsigned int low;
+    A operator+(const A in);
+};
+
+A A::operator+(const A in)
+{
+    if (high==0)
+      return A();    // this works
+    else
+      return (A());  // this works not !! -> why ?? // ERROR - 
+} // ERROR -