https://issues.dlang.org/show_bug.cgi?id=20951

kinke <ki...@gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ki...@gmx.net

--- Comment #1 from kinke <ki...@gmx.net> ---
Some context:

At compile-time, i.e., inside the frontend, floating-point literals and CTFE
values of *any precision* are represented using a type called real_t (see
dmd.root.ctfloat), which is the host's `real` most of the time, except for gdc,
which uses a host-independent high-precision software implementation AFAIK (so
consistent behavior for cross-compilation too). So all literals are parsed as
real_t (although there are precision-dependent over-/underflow checks), and
CTFE calculations incl. some transcendental math functions are performed using
the compiler's real_t type, regardless of whether the compile-time value is
typed as a float, double or real.

Iain has recently added a core.math.toPrec() function, I don't know if he had
CTFE in mind for this and whether he changed something in the compiler as well.

--

Reply via email to