Index: /trunk/ccl/level-0/l0-numbers.lisp
===================================================================
--- /trunk/ccl/level-0/l0-numbers.lisp	(revision 5585)
+++ /trunk/ccl/level-0/l0-numbers.lisp	(revision 5586)
@@ -1757,5 +1757,5 @@
 	   (if (eql n1 most-negative-fixnum)
 	     (if (eql n2 most-negative-fixnum)
-	       1
+	       (- most-negative-fixnum)
 	       (bignum-fixnum-gcd (- most-negative-fixnum) (abs n2)))
 	     (if (eql n2 most-negative-fixnum)
@@ -1773,5 +1773,7 @@
 	 (number-case n2
 	   (fixnum
-	    (bignum-fixnum-gcd (bignum-abs n1)(fixnum-abs n2)))
+            (if (eql n2 most-negative-fixnum)
+              (%bignum-bignum-gcd (bignum-abs n1)(fixnum-abs n2))
+              (bignum-fixnum-gcd (bignum-abs n1)(fixnum-abs n2))))
 	   (bignum (%bignum-bignum-gcd n1 n2))))))))
 
