https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88174
--- Comment #1 from Marc Glisse <glisse at gcc dot gnu.org> --- (In reply to emsr from comment #0) > While updating libstdc++ for constexpr operators I came across this: > __real__ _M_value += __z.real(); > is not constexpr even though > __real__ _M_value = __z.real(); > is. Is it? I get "error: modification of '__real__ x' is not a constant expression". cxx_eval_store_expression has special cases for ARRAY_REF, BIT_FIELD_REF, COMPONENT_REF, maybe it needs more.