https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86184
Marek Polacek <mpolacek at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mpolacek at gcc dot gnu.org --- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> --- It looks like we should avoid wrapping a TARGET_EXPR in SAVE_EXPR: 4806 /* Make sure that lvalues remain lvalues. See g++.oliva/ext1.C. */ 4807 if (lvalue_p (arg1)) 4808 arg2 = arg1 = cp_stabilize_reference (arg1); 4809 else 4810 arg2 = arg1 = cp_save_expr (arg1); because that makes the clk_class expression a clk_none.