From 9e82d9fee6f2f029098a5463556dc5ae2ed47c4e Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Mon, 17 Feb 2003 15:44:59 +0000 Subject: [PATCH] 0.7.12.40: Fixed a stupid bug in the NOT type translator, revealed by Paul Dietz' suite: ... properly invert the bound: if it's a CONS, take the CAR; ... now we understand (NOT (RATIONAL (0) (10)) a bit better. --- src/code/late-type.lisp | 8 ++++---- version.lisp-expr | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/code/late-type.lisp b/src/code/late-type.lisp index 1887261..a5e69ac 100644 --- a/src/code/late-type.lisp +++ b/src/code/late-type.lisp @@ -1307,24 +1307,24 @@ (modified-numeric-type not-type :low (let ((h (numeric-type-high not-type))) - (if (consp h) h (list h))) + (if (consp h) (car h) (list h))) :high nil)) ((null (numeric-type-high not-type)) (modified-numeric-type not-type :low nil :high (let ((l (numeric-type-low not-type))) - (if (consp l) l (list l))))) + (if (consp l) (car l) (list l))))) (t (type-union (modified-numeric-type not-type :low nil :high (let ((l (numeric-type-low not-type))) - (if (consp l) l (list l)))) + (if (consp l) (car l) (list l)))) (modified-numeric-type not-type :low (let ((h (numeric-type-high not-type))) - (if (consp h) h (list h))) + (if (consp h) (car h) (list h))) :high nil)))))) ((intersection-type-p not-type) (apply #'type-union diff --git a/version.lisp-expr b/version.lisp-expr index 9067b6a..ada9e8b 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -18,4 +18,4 @@ ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.7.12.39" +"0.7.12.40" -- 1.7.10.4