Problem with integral promotions

Jerry via Digitalmars-d digitalmars-d at puremagic.com
Sat Jul 22 13:28:41 PDT 2017


On Saturday, 22 July 2017 at 10:51:05 UTC, ketmar wrote:
> Walter Bright wrote:
>
>> 2. Codify existing practice, since it has been that way 
>> forever. Not matching C has caused problems, see 16997 and 
>> 17637. It may cause more serious silent problems for people 
>> converting C code to D code.
>
> i'd say "codify, and add warning". since i patched the warning 
> into the compiler, i have no more problems with the current 
> rules: compiler tells me about possible incompatibilities with 
> C, and i can either add `()` to silent the warning, or 
> explicitly cast to the type i want.
>
> i think most other people will prefer to get warning instead of 
> code breakage too. at least i hope so. ;-)

Good luck adding a warning into DMD. After years there still 
isn't a warning for unsigned/signed comparisons.

What code would break? Are there any examples of D code that 
would break as a result of the change?




More information about the Digitalmars-d mailing list