/* We used to crash in ccp here, because the initial constant value of 2 was changed to 5. */ /* { dg-do compile } */ /* { dg-options "-O2 -fdump-tree-optimized" } */ static const int a = 2; int test (int param) { int *p = (int *) &a; if (param) *p = 5; return a; } /* Check that we return the correct (unchanged) value. */ /* { dg-final { scan-tree-dump-times "return 2" 1 "optimized" } } */ /* { dg-final { scan-tree-dump-times "return 5" 0 "optimized" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */