On Sat, Nov 28, 2015 at 08:50:12AM +0100, Richard Biener wrote: > Different approach: after the FE folds (unexpectedly?), scan the result for > SAVE_EXPRs and if found, drop the folding.
Neither this fixes this problem completely, because we simply don't know where those SAVE_EXPRs might be introduced: it might be convert(), but e.g. when I changed the original testcase a tiny bit (added -), then those SAVE_EXPRs were introduced in a different spot (via c_process_stmt_expr -> c_fully_fold). Marek