https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83692

--- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Seems like in C++17 the condition in

  if (m_x.value() != 1)
    throw 0;

gets evaluated to 1 instead of 0, so we try to evaluate the "throw 0" but that
can't be evaluated to a constant value.  Maybe some bad caching in
constexpr_call_cache.

Reply via email to