dmd 1.053 and 2.037 release

Lars T. Kyllingstad public at kyllingen.NOSPAMnet
Mon Dec 7 04:31:48 PST 2009


Don wrote:
> Don wrote:
>> Lars T. Kyllingstad wrote:
>>> Walter Bright wrote:
>>>> Probably the biggest thing is opDispatch!
>>>>
>>>> http://www.digitalmars.com/d/1.0/changelog.html
>>>> http://ftp.digitalmars.com/dmd.1.053.zip
>>>>
>>>>
>>>> http://www.digitalmars.com/d/2.0/changelog.html
>>>> http://ftp.digitalmars.com/dmd.2.037.zip
>>>>
>>>> Many thanks to the numerous people who contributed to this update.
>>>
>>>
>>> Thanks, guys! This is a pretty awesome release. :) I especially like 
>>> that opPow made it in, and also the changes to std.math look very 
>>> useful.
>>>
>>> I have one question regarding the latter: What exactly is supposed to 
>>> happen when I run the example in the FloatingPointControl 
>>> documentation? Is the program supposed to crash with some informative 
>>> error message, or do I have to do something to catch the exception? 
>>> Currently, nothing out of the ordinary happens when I run it on my 
>>> computer -- y just becomes NaN when x is NaN.
>>
>> Aargh, the example's wrong. DMD optimizes the assignment into a blit. 
>> Try setting y = x*2.
> I take that back. The example is correct. This code...
> -----
> import std.math;
> 
> void main()
> {
>     real x;
>     FloatingPointControl fpctrl;
>     fpctrl.enableExceptions(FloatingPointControl.severeExceptions);
>     double y = x*3.0;
> }
> ----
> results in:
> object.Error: Invalid Floating Point Operation
> 
> However, it seems that the compiler is no longer creating variables of 
> type double and float as signalling NaNs. That's a bug.

OK, thanks for explaining. :)

-Lars


More information about the Digitalmars-d-announce mailing list