/* { dg-do compile } */ typedef unsigned short uint16_t; uint16_t a, b; uint16_t f(void) { int c, **p; short d = 2, e = 4; for (;; b++) { int *j, k = 0; for (; *j; j++) { for(; c; c++) for(; k < 1; k++) { short *f = &d; if(b) return *f; } } if(!c) d *= e; ((a = d) ? b = 0 : (**p ? : 1) != (d != 1 ? : (a = 0))) != (k ? a : 0) < (a *= c = k) && (**p = 0); } }