From 5b74a278be127aeb2558562654e1c662e4d742b5 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Tue, 10 Jul 1990 13:17:58 +0000 Subject: [PATCH] Fixed ASH to return 0 rather than -1 when there is a large negative shift, but the number is positive. --- code/numbers.lisp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/code/numbers.lisp b/code/numbers.lisp index c027f8360..66ada40e0 100644 --- a/code/numbers.lisp +++ b/code/numbers.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/numbers.lisp,v 1.8 1990/07/09 14:13:42 ram Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/numbers.lisp,v 1.9 1990/07/10 13:17:58 ram Exp $ ;;; ;;; This file contains the definitions of most number functions. ;;; @@ -964,13 +964,11 @@ (> (+ length count) (integer-length most-positive-fixnum))) (bignum-ashift-left (make-small-bignum integer) count)) - ((and (minusp count) (< count (- length))) - -1) (t (truly-the fixnum (ash (truly-the fixnum integer) count)))))) ((minusp count) - -1) + (if (minusp integer) -1 0)) (t (bignum-ashift-left (make-small-bignum integer) count)))) (bignum -- GitLab