Date: Sunday, October 10, 2010 @ 09:02:10 Author: rtoy Path: /project/cmucl/cvsroot/src/lisp Modified: print.c Use lowtag_Bits - 1 instead of a bare 2 when converting a fixnum object to its value. ---------+ print.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) Index: src/lisp/print.c diff -u src/lisp/print.c:1.26 src/lisp/print.c:1.27 --- src/lisp/print.c:1.26 Sun Oct 10 08:52:58 2010 +++ src/lisp/print.c Sun Oct 10 09:02:10 2010 @@ -1,4 +1,4 @@ -/* $Header: /project/cmucl/cvsroot/src/lisp/print.c,v 1.26 2010-10-10 12:52:58 rtoy Exp $ */ +/* $Header: /project/cmucl/cvsroot/src/lisp/print.c,v 1.27 2010-10-10 13:02:10 rtoy Exp $ */ #include <stdio.h> #include <string.h> @@ -385,7 +385,7 @@ #else { char *charptr = (char *) vector->data; - int len = (int) (vector->length >> 2); + int len = (int) (vector->length >> (logtag_Bits - 1); while (len-- > 0) { if ((charptr[0] == 0) @@ -412,7 +412,7 @@ #else /* FIXME: Unicode hack! */ { - int len = (((struct vector *) ptr)->length) >> 2; + int len = (((struct vector *) ptr)->length) >> (lowtag_Bits - 1); unsigned short int *wcharptr = (unsigned short int *) vector->data; while (len-- > 0) { @@ -523,7 +523,7 @@ } header = *ptr++; - length = (*ptr) >> 2; + length = (*ptr) >> (lowtag_Bits - 1); count = header >> 8; type = TypeOf(header);