Temtaime:

Why? Compiler doesn't know if a + b fits in uint, right?
Then why overflow with ints are accepted?

It's an inconstancy based on practical considerations.

Walter decided that applying the same rule to uint/int/long causes too many casts in normal problems.

And the range of a 32 bit int is much larger than the range of a ubyte/byte/ushort/short, so in normal programs the probability of overflowing an int by mistake is much lower than overflowing a ubyte.


So your example is meaningless.

You should be more gentle if you want people to keep giving you answers :-)

Bye,
bearophile

Reply via email to