dmd 1.046 and 2.031 releases

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Jul 7 08:33:38 PDT 2009


Jarrett Billingsley wrote:
> The only thing is: why doesn't _this_ fail, then?
> 
> int x, y, z;
> z = x + y;
> 
> I'm sure it's out of convenience, but what about in ten, fifteen years
> when 32-bit architectures are a historical relic and there's still
> this hole in the type system?

Well 32-bit architectures may be a historical relic but I don't think 
32-bit integers are. And I think it would be too disruptive a change to 
promote results of arithmetic operation between integers to long.

> The same argument applies for the implicit conversions between int and
> uint.  If you're going to do that, why not have implicit conversions
> between long and ulong on 64-bit platforms?

This is a different beast. We simply couldn't devise a satisfactory 
scheme within the constraints we have. No simple solution we could think 
of has worked, nor have a number of sophisticated solutions. Ideas would 
be welcome, though I need to warn you that the devil is in the details 
so the ideas must be fully baked; too many good sounding high-level 
ideas fail when analyzed in detail.


Andrei


More information about the Digitalmars-d-announce mailing list