1 /* { dg-do compile } */
2 /* { dg-options "-O3 -Wno-int-conversion" } */
3 
4 /* PR77916: This failed with "error: invalid (pointer) operands to plus/minus"
5    after SLSR.  */
6 
7 typedef struct
8 {
9   void *f1;
10 } S;
11 
12 S *a;
13 int b;
14 
15 void
fn1(void)16 fn1 (void)
17 {
18   for (; b; b++, a++)
19     a->f1 = b;
20 }
21