Is there any reason why arithmetic operation on shorts and bytes return int?
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Tue Dec 11 08:09:13 PST 2012
On 12/11/12 8:24 AM, d coder wrote:
>
> No, it's a fix of a gotcha from C. The C code would just allow the
> assignment.
>
>
> Yes Andrei.
>
> But it does not look clean if you have to write:
>
> byte a, b, c;
> a = cast(byte) (b + c);
>
> Well I know the advantages (safety). But imagine having to write all
> that when working with bytes and shorts. Makes it really difficult to
> work with shorts and bytes in D.
Value range propagation automatically avoids the need for a lot of those
casts. http://www.drdobbs.com/tools/value-range-propagation/229300211
> Would I be asking for too much if I ask
> DMD to provide a compiler flag that makes it return bytes and shorts for
> operations on them?
That won't happen.
Andrei
More information about the Digitalmars-d
mailing list