On Tue, 2008-02-05 at 22:32 +0100, rtogni wrote: > + return len&3 ? ptr + (1<<(len&3 - 1)) - 1 < endptr : 1; - has higher precedence than &, so the shift amount is parsed as (len & 3-1) == (len & 2).