On Mon, Dec 7, 2015 at 7:20 AM, Marek Polacek <pola...@redhat.com> wrote: > 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.
Yes, looks like it.