Commit 30235724 by Bernd Schmidt Committed by Bernd Schmidt

More tests for sequence point warnings.

From-SVN: r37226
parent 94e9dc13
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.
......
......@@ -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" } */
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment