[Issue 17007] let std.math work in CTFE

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Aug 26 08:23:20 UTC 2019


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

Simen Kjaeraas <simen.kjaras at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |simen.kjaras at gmail.com

--- Comment #2 from Simen Kjaeraas <simen.kjaras at gmail.com> ---
These functions currently fail in CTFE:

nextPow2/truncPow2: reinterpreting as ushort. (both call same function)
nextDown/nextUp/nextafter: reinterpreting as ulong.
lrint:         inline assembly.
ilogb:         reinterpreting in union.
cmp:           reinterpreting in union.
frexp:         reinterpreting as ushort, int and/or long.
feqrel:        reinterpreting as ushort.
isNormal:      reinterpreting as ushort.
isPowerOf2:    reinterpreting as ushort. 
NaN:           reinterpreting as ulong.
getNaNPayload: reinterpreting as ulong.
isIdentical:   reinterpreting as long.
isSubnormal:   reinterpreting as uint.
atan/atan2:    reinterpreting as ubyte. (both call same function)
signbit:       reinterpreting as ubyte.
remainder:     intrinsic.
cbrt:          intrinsic.
fmod:          intrinsic.
modf:          intrinsic.
logb:          intrinsic.
nearbyint:     intrinsic.
rint:          intrinsic.
rndtol:        intrinsic.
lround:        intrinsic.

expi:          inline assembly. This function is deprecated.
quantize:      depends on rint by default, works with other rounding functions.

--


More information about the Digitalmars-d-bugs mailing list