On Sun, Dec 06, 2015 at 11:50:15PM -0500, Patrick Palka wrote:
> diff --git a/gcc/c/c-fold.c b/gcc/c/c-fold.c
> index c554e17..ab0b37f 100644
> --- a/gcc/c/c-fold.c
> +++ b/gcc/c/c-fold.c
> @@ -88,6 +88,7 @@ c_fully_fold (tree expr, bool in_init, bool *maybe_const)
> }
> ret = c_fully_fold_internal (expr, in_init, maybe_const,
> &maybe_const_itself, false);
> + ret = decl_constant_value_for_optimization (ret);
Sorry, I don't think you can just do this. Because for e.g.
const int x = 7;
x++;
we'd turn this into
7++;
, right? And I'm sure that's going to ICE in gimplifier.
Marek