Pardon me for jumping in, but is it too late I wonder to align things with the x86 instructions (that presumably inspired the “shr” operator name in the first place) ?
shr corresponding to >>> (logical bit shift)
sar corresponding to >> (arithmetic bit shift)
I appreciate this could be problematic as it would mean changing the current behaviour of shr, but as well as making a “matching pair” of operators (shr/sar) this would also make shr consistent with Delphi, for example.
Perhaps subject to a “compatability” setting in the compiler ?