More tests for sequence point warnings.
authorBernd Schmidt <bernds@redhat.co.uk>
Fri, 3 Nov 2000 16:02:20 +0000 (16:02 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Fri, 3 Nov 2000 16:02:20 +0000 (16:02 +0000)
From-SVN: r37226

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/sequence-pt-1.c

index 9a7634dc8f41934d6347ec542510e8d8f4fafa28..12fce882d9cdccb572a03d19eb82926c5f21efe4 100644 (file)
@@ -1,3 +1,8 @@
+2000-11-03  Bernd Schmidt  <bernds@redhat.co.uk>
+
+       * gcc.dg/sequence-pt-1.c: A few new tests.  Unify output for bogus
+       warnings.
+
 2000-11-01  Richard Henderson  <rth@redhat.com>
 
        * g++.old-deja/g++.ext/namedret1.C: New.
index 022a998fc780b43ba6dc5afb8ed3f2c44dba3031..1969781b9403e8b28f60428b738b03849522286b 100644 (file)
@@ -45,15 +45,20 @@ foo (int a, int b, int n, int p, int *ptr, struct s *sptr,
   *ap = fnc (ap++); /* { dg-warning "undefined" "sequence point warning" } */
   (a += b) + (a += n); /* { dg-warning "undefined" "sequence point warning" } */
   a =  (b, b++) + (b++, b); /* { dg-warning "undefined" "sequence point warning" } */
+  ap[a++] += a; /* { dg-warning "undefined" "sequence point warning" } */
+  ap[a+=1] += a; /* { dg-warning "undefined" "sequence point warning" } */
+  ap[a++] += a++; /* { dg-warning "undefined" "sequence point warning" } */
+  ap[a+=1] += a++; /* { dg-warning "undefined" "sequence point warning" } */
 
   a = (a++ && 4); /* { dg-bogus "undefined" "bogus sequence point warning" } */
   len = sprintf (ans, "%d", len++); /* { dg-bogus "undefined" "bogus sequence point warning" } */
   a = fn (a++); /* { dg-bogus "undefined" "sequence point warning" } */
-  (a = b++), (a = b++); /* { dg-bogus "undefined" "sequence point warning" } */
-  a = (b++, b++); /* { dg-bogus "undefined" "sequence point warning" } */
-  a = b++ && b++; /* { dg-bogus "undefined" "sequence point warning" } */
-  a = b++ || b++; /* { dg-bogus "undefined" "sequence point warning" } */
-  a = (b++ ? b++ : a); /* { dg-bogus "undefined" "sequence point warning" } */
-  a = (b++ ? a : b++); /* { dg-bogus "undefined" "sequence point warning" } */
-  ap[a++] += bp[b]; /* { dg-bogus "undefined" "sequence point warning" } */
+  (a = b++), (a = b++); /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  a = (b++, b++); /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  a = b++ && b++; /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  a = b++ || b++; /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  a = (b++ ? b++ : a); /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  a = (b++ ? a : b++); /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  ap[a++] += bp[b]; /* { dg-bogus "undefined" "bogus sequence point warning" } */
+  ap[a += 1] += 1; /* { dg-bogus "undefined" "bogus sequence point warning" } */
 }