0 < negative loop condition bug or misunderstanding on my part

Timon Gehr timon.gehr at gmx.ch
Wed Mar 7 02:01:05 PST 2012


On 03/07/2012 07:05 AM, ixid wrote:
> Ah, thank you, so it's wrapping. That seems like a bad idea, what is the
> benefit to size being unsigned rather than signed? This case would seem
> like one where allowing negatives is clearly better and more intuitive.

The problem is not that length is unsigned. The issue is the implicit 
conversion from signed to unsigned. The right thing would be to disallow 
signed -> unsigned and unsigned -> signed implicit conversion unless 
value range propagation can prove it safe, and to make comparison 
between signed and unsigned actually work by translating it to more than 
one machine instruction.


More information about the Digitalmars-d-learn mailing list