phobos's circle CI runs a busted version of DMD

Walter Bright newshound2 at digitalmars.com
Wed Jan 11 23:22:04 UTC 2023


On 1/11/2023 12:55 PM, Paul Backus wrote:
> If we rewrite deadalnix's example using this equivalence, we get the following 
> code:
> 
>      ushort ee = 1028;
>      ee = cast(ushort)(ee << 5U);
>      ee = cast(ushort)(ee >> 5U);
>      writeln(ee);
> 
> ...which prints 1028. So the behavior of the original example is unambiguously a 
> violation of the language spec.

That's right. It also happens for ubyte operations.



More information about the Digitalmars-d mailing list