Correcting obvious typo: Sanjoy Das wrote: [snip] > i32 result0 = *p.i32 > i32 result1 = *p.i32 > i32 result = (result0 & 1) | (result1 & ~1); > > then it is possible for result to be 254 (by result0 observing 0 and > result observing 255). Should be: "by result0 observing 0 and result1 observing 255" -- Sanjoy