Don wrote: > That's true. What you are doing is removing the int/byte inconsistency, > by making uint == int comparisons behave the same way that ubyte == > byte comparisons do now. > Notice that your proposal > (1) preserves the existing behaviour of byte==ubyte (which the original > poster was complaing about);
Yes. > (2) silently changes the behaviour of existing D and C code (that > involves int==uint); and True. I don't consider C compatibility a major issue, but others do. (If C compatibility was a major issue for me, I'd never even consider moving from C++ to D.) > (3) assumes that the code as written is what the programmer intended. I > suspect that this type of code is frequently an indicator of a bug. Yes, but the opposite behavior is just as likely to be a bug. Between two behaviors that mask possible bugs, I'd rather have the mathematically correct behavior. The alternative is to flat-out ban comparison of mixed-sign types. -- Rainer Deyke - rain...@eldwood.com