| /* PR 18050 : bogus warning with -Wsequence-point */ | |
| /* { dg-do compile } */ | |
| /* { dg-options "-Wsequence-point" } */ | |
| struct x | |
| { | |
| int i; | |
| }; | |
| void bar(struct x*, int *); | |
| void foo(struct x *y) | |
| { | |
| bar(y++, &y->i); /* { dg-warning "operation on 'y' may be undefined" } */ | |
| } | |
| void zz(int a, int *b) | |
| { | |
| *b = a; | |
| } | |
| void baz(void) { | |
| int a = 5; | |
| zz(++a, &a); /* { dg-bogus "operation on 'a' may be undefined" } */ | |
| } |