--- Comment #4 from Stewart Gordon <s...@iname.com> 2012-01-18 16:31:48 PST ---
(In reply to comment #2)
> Apart from Stewart's comment, there's also the case of >>>.
> a >>>= b is different to a = a >>> b, if a is short or byte.
> (The first does an unsigned shift, the second does a signed shift).
Oh yes, that crazy abomination that is promotion. Suppose you have
byte a = cast(byte) 0b11110000; // why does it insist on a cast?
a = a >>> 3;
then what actually happens is
0b11110000 >> 3
promote to int
0b1111111111110000 >> 3
convert back to a byte
If you shift by 25 or more (17 or more for short), you'll start to see the zero
bits come through.
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------