GDC release 0.23

Don Clugston dac at nospam.com.au
Wed Mar 7 10:57:30 PST 2007


Anders F Björklund wrote:
> Don Clugston wrote:
> 
>>> Older versions of PPC operating systems used 64-bit for "long double",
>>> newer versions use 128-bit. Both are still in use, so we won't know.
>>
>> Ugh. That's really horrible.
> 
> It's called progress :-)

I was referring to the entire section, not just that line.

> 
>>> And since the D "real" type simply maps over to C/C++ "long double",
>>> it means that it will be either 64-bit, 80-bit or 128-bit. Varying.
>>
>> We've got to keep that piece of lunacy out of D somehow. Could we 
>> define it as __longdouble or something? (Ideally only for PPC, so that 
>> error messages remain sensible on other platforms).
>>
>> At least in D, we can static-if an alias or typedef on the basis of 
>> mant_dig.
> 
> I'll let David decide which one wins: D real === C long double, or
> the definition of "largest hardware implemented floating point size"

There's just no way D real can be equal to C long double in general, 
when the C long double is playing silly games. The only reason gcc can 
even do that, is that the C spec for floating point is ridiculously 
vague, and consequently no-one actually uses long double. To mimic it is 
to immediately break D's support for IEEE.

Seriously, the viability of D as a numeric computing platform is at 
stake here.


More information about the D.gnu mailing list