https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105321
--- Comment #3 from Marek Polacek <mpolacek at gcc dot gnu.org> --- The argument for lval changed from false to true in commit 12d9ce19034428072b3779eff017c5e129ee4c0e Author: Jason Merrill <ja...@redhat.com> Date: Wed Dec 17 15:41:18 2014 -0500 re PR c++/64333 (C++14 constexpr gives wrong results when a looping constexpr function is evaluated twice) PR c++/64333 * constexpr.c (cxx_bind_parameters_in_call): non_constant_args parm. (cxx_eval_call_expression): Don't cache calls with non-constant args. (cxx_eval_constant_expression) [COMPOUND_EXPR]: Pass true for lval. (cxx_eval_unary_expression, cxx_eval_binary_expression) (cxx_eval_conditional_expression): Pass false for lval. From-SVN: r218832