1 /* { dg-do run } */
2
3 char a = 0, f = 0, c = 5;
4 unsigned long d = 0;
5 int g = 0;
6 int *e = &g;
7
8 int main() {
9 char b = 0;
10 for (;;) {
11 for (a = 0; a < 2; a++) { // no UB I believe
12 if (c) {
13 if (d != 0)
14 __builtin_abort ();
15 return 0;
16 }
17 }
18 f = (d++, *e);
19 }
20
21 return 1;
22 }