[Issue 3970] Problem with cast -1.0L ==> uint/ulong

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Nov 7 01:24:40 PST 2013


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


bearophile_hugs at eml.cc changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


--- Comment #5 from bearophile_hugs at eml.cc 2013-11-07 01:24:39 PST ---
Now this passes on Windows32, I close down the issue:


void main() {
    static assert((cast(ushort)(-1.0L)) == 0xFFFFU);
    static assert((cast(uint)(-1.0)) == 0xFFFF_FFFFU);
    static assert((cast(uint)(-1.0L)) == 0xFFFF_FFFFU);
    static assert((cast(ulong)(-1.0L)) == 0xFFFF_FFFF_FFFF_FFFFUL);

    assert((cast(ushort)(-1.0L)) == 0xFFFF);
    assert((cast(uint)(-1.0)) == 0xFFFF_FFFFU);
    assert((cast(uint)(-1.0L)) == 0xFFFF_FFFFU);
    assert((cast(ulong)(-1.0L)) == 0xFFFF_FFFF_FFFF_FFFFUL);
}

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


More information about the Digitalmars-d-bugs mailing list