http://d.puremagic.com/issues/show_bug.cgi?id=3970


Aldo Nunez <aldonun...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |aldonun...@gmail.com


--- Comment #1 from Aldo Nunez <aldonun...@gmail.com> 2010-03-15 12:38:47 PDT 
---
It seems like the runtime casting of (float, double, real -> uint) and (float,
double -> ulong) can be done simpler, and in a way that would fix the -1.0 -> 0
bug.

When converting from float or double to ulong; why can't it be done like real
to ulong, where there is a simple conversion in x87 registers plus a fixup for
ulong values greater than long.max?

When converting from FP to uint; why can't it be done like FP to ushort, where
there is a simple conversion to int with x87 registers, and then a truncation?

This would make all floating point to integer conversions consistent, and get
rid of this bug where an FP -1 turns into an integer 0xFF... in some cases, and
in others 0. It should always be 0xFF..., just like a signed integer to
unsigned conversion.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------

Reply via email to