SmallInteger.st
changeset 19264 11160ea2c8b3
parent 19263 6b090dfa8c32
child 19265 00b7f10969d7
--- a/SmallInteger.st	Sat Feb 27 22:19:37 2016 +0100
+++ b/SmallInteger.st	Sat Feb 27 22:26:31 2016 +0100
@@ -2909,18 +2909,18 @@
     if (i & 0x80000000L) {
 	i = i | ~0xFFFFFFFFL;
     } else {
-	i = i & 0x7FFFFFFF;
+	i = i & 0x7FFFFFFFL;
     }
 
-    RETURN (__mkSmallInteger(i));
+    RETURN (__MKINT(i));
 #endif
 %}.
     ^ self primitiveFailed
 
     "
-     16rFFFFFFFF signExtendedLongValue
-     16r80000000 signExtendedLongValue
-     16r7FFFFFFF signExtendedLongValue
+     16rFFFFFFFF signExtendedLongValue -> -1
+     16r80000000 signExtendedLongValue -> -2147483648
+     16r7FFFFFFF signExtendedLongValue -> 2147483647
     "
 !