1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-tree-forwprop1 -W -Wall" } */
3 
4 int i;
foo(void)5 int foo(void)
6 {
7   volatile int *p = (volatile int *)&i;
8   return *p + *p;
9 }
10 
11 /* We should not convert the cast to a VCE in forwprop1 as we have a
12    volatile reference.  */
13 
14 /* { dg-final { scan-tree-dump-times "VIEW_CONVERT_EXPR" 0 "forwprop1"} } */
15 /* { dg-final { scan-tree-dump-times "={v}" 2 "forwprop1"} } */
16