diff -r 8b4cafbd318a -r 657e60b50dce SmallInteger.st --- a/SmallInteger.st Thu Feb 05 15:03:30 2009 +0100 +++ b/SmallInteger.st Fri Feb 06 15:07:32 2009 +0100 @@ -1042,13 +1042,23 @@ /* and all bits except tag */ if (__isSmallInteger(aMask)) { - RETURN ( ((INT)self & ((INT)aMask & ~TAG_MASK)) ? true : false ); + RETURN ( ((INT)self & ((INT)aMask & ~TAG_MASK)) ? true : false ); } %}. aMask class == LargeInteger ifTrue:[ - ^ (aMask bitAnd:self) ~~ 0 + ^ (aMask bitAnd:self) ~~ 0 ]. ^ self retry:#bitTest: coercing:aMask + + " + 2r10001 bitTest:2r00001 + 2r10001 bitTest:2r00010 + 2r10001 bitTest:2r00100 + 2r10001 bitTest:2r01000 + 2r10001 bitTest:2r10000 + 2r10001 bitTest:2r10001 + 2r10001 bitTest:2r10010 + " ! bitXor:anInteger @@ -3798,5 +3808,5 @@ !SmallInteger class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libbasic/SmallInteger.st,v 1.174 2009-02-01 11:05:51 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic/SmallInteger.st,v 1.175 2009-02-06 14:07:32 cg Exp $' ! !