diff options
author | Bernd Schmidt <bernds@redhat.co.uk> | 2000-11-03 16:02:20 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2000-11-03 16:02:20 +0000 |
commit | 30235724a2cd237a613883e9c4149f979acb91ea (patch) | |
tree | 6d14921a6aa6c7fac2a6ee1035ffb6babaa48c58 | |
parent | 94e9dc136e6a3de62c4c75f30d83470fc7c2845b (diff) | |
download | gcc-30235724a2cd237a613883e9c4149f979acb91ea.zip gcc-30235724a2cd237a613883e9c4149f979acb91ea.tar.gz gcc-30235724a2cd237a613883e9c4149f979acb91ea.tar.bz2 |
More tests for sequence point warnings.
From-SVN: r37226
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/sequence-pt-1.c | 19 |
2 files changed, 17 insertions, 7 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9a7634d..12fce88 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -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. diff --git a/gcc/testsuite/gcc.dg/sequence-pt-1.c b/gcc/testsuite/gcc.dg/sequence-pt-1.c index 022a998..1969781 100644 --- a/gcc/testsuite/gcc.dg/sequence-pt-1.c +++ b/gcc/testsuite/gcc.dg/sequence-pt-1.c @@ -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" } */ } |