1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
/* { dg-do compile } */ /* { dg-options "-O2 -fno-strict-aliasing -fdump-tree-optimized" } */ struct data { volatile unsigned long *addr; } *p; int test() { *p->addr; return 0; } /* The load from p->addr should not disappear. */ /* { dg-final { scan-tree-dump-times "\->addr" 1 "optimized"} } */