On Fri, Dec 01, 2017 at 01:08:35AM +0000, Robert Elz wrote:
> Module Name:  src
> Committed By: kre
> Date:         Fri Dec  1 01:08:35 UTC 2017
> 
> Modified Files:
>       src/tests/lib/libc/locale: t_sprintf.c
> 
> Log Message:
> Since the C standard allows for intermediate floating results to contain
> more precision bits than the data type expects, but (kind of obviously)
> does not allow such values to be stored in memory, expecting the value
> returned from strtod() (an intermediate result) to be identical (that is,
> equal) to a stored value is incorrect.

This is *not* true. With C11 the standard is very explicit that return
must discard excessive precision. Even before, it was implied that there
is an implicit cast.

Joerg

Reply via email to