25 lines
538 B
C
25 lines
538 B
C
/* 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" } } */
|