annotate gcc/testsuite/gcc.dg/Wsequence-point-pr18050.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR 18050 : bogus warning with -Wsequence-point */
kono
parents:
diff changeset
2 /* { dg-do compile } */
kono
parents:
diff changeset
3 /* { dg-options "-Wsequence-point" } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 struct x
kono
parents:
diff changeset
6 {
kono
parents:
diff changeset
7 int i;
kono
parents:
diff changeset
8 };
kono
parents:
diff changeset
9 void bar(struct x*, int *);
kono
parents:
diff changeset
10
kono
parents:
diff changeset
11 void foo(struct x *y)
kono
parents:
diff changeset
12 {
kono
parents:
diff changeset
13 bar(y++, &y->i); /* { dg-warning "operation on 'y' may be undefined" } */
kono
parents:
diff changeset
14 }
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 void zz(int a, int *b)
kono
parents:
diff changeset
17 {
kono
parents:
diff changeset
18 *b = a;
kono
parents:
diff changeset
19 }
kono
parents:
diff changeset
20
kono
parents:
diff changeset
21 void baz(void) {
kono
parents:
diff changeset
22 int a = 5;
kono
parents:
diff changeset
23 zz(++a, &a); /* { dg-bogus "operation on 'a' may be undefined" } */
kono
parents:
diff changeset
24 }