Overflow-safe use of unsigned integral types
rumbu
rumbu at rumbu.ro
Sun Nov 10 12:40:14 PST 2013
On Sunday, 10 November 2013 at 12:19:18 UTC, mike james wrote:
> When writing software for embedded micros you can always check
> an overflow flag - is the no such mechanism on PC software?
>
This is not overflow checking, it's the compiler considering a
variable of type int implicitely convertible to equivalent
unsigned types at bit level.
I suppose it's a bug or may be the documentation is wrong
(http://dlang.org/type.html):
ubyte u1 = cast(byte)-1; // error, -1 cannot be represented in
a ubyte
ushort u2 = cast(short)-1; // error, -1 cannot be represented in
a ushort
These two lines are succesfully compiled by the last DMD on
Windows.
More information about the Digitalmars-d-learn
mailing list