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

--- Comment #8 from Michael Matz <matz at gcc dot gnu.org> ---
(In reply to Michael Matz from comment #7)
> So, my interpretation is that unsuffixed "4.2" has to be the double constant
> 4.2 (in IEEE double aka 0x1.0cccccccccccdp+2), which is then, because of
> FLT_EVAL_METHOD, evaluated to "range and precision of long double" leading
> to 0x8.6666666666668p-1, not to 0x8.666666666666666p-1 .

That is, I think that the real_from_string3 call in interpret_float should use
TYPE_MODE(type) plus conversion to const_type, not const_type plus conversion
to type (for over/underflow warnings).

Reply via email to