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

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Note, internally in standard excess precision, 4.2 seen by the lexer is
actually
EXCESS_PRECISION <double, 4.2L>, when it is assigned to a double variable or
cast
to double (i.e. in places where C/C++ require the excess precision to be
converted to the narrower one) it is rounded to double, but when used as (long
double)4.2 it is
the same as 4.2L and even (long double)d == (long double)4.2 should behave the
same
as (long double)d == 4.2 and d == 4.2.

Reply via email to