'int' is enough for 'length' to migrate code from x86 to x64

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Thu Nov 20 00:02:42 PST 2014


On 11/19/2014 5:03 PM, H. S. Teoh via Digitalmars-d wrote:
> If this kind of unsafe mixing wasn't allowed, or required explict casts
> (to signify "yes I know what I'm doing and I'm prepared to face the
> consequences"), I suspect that bearophile would be much happier about
> this issue. ;-)

Explicit casts are worse than the problem - they can easily cause bugs.

As for me personally, I like having a complete set of signed and unsigned 
integral types at my disposal. It's like having a full set of wrenches that are 
open end on one end and boxed on the other :-) Most of the time either end will 
work, but sometimes only one will.

Now, if D were a non-systems language like Basic, Go or Java, unsigned types 
could be reasonably dispensed with. But D is a systems programming language, and 
it ought to have available types that match what the hardware supports.



More information about the Digitalmars-d mailing list