From 5a9b8108ec90b0f004cbf285f81a6c2e9087ca33 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Fri, 6 Jul 1990 17:06:39 +0000 Subject: [PATCH] Fixed CONSTRAIN-REF-TYPE to not lose when we substitute one variable for another due to an EQL constraint. --- compiler/constraint.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/constraint.lisp b/compiler/constraint.lisp index 566594090..ab6a4530a 100644 --- a/compiler/constraint.lisp +++ b/compiler/constraint.lisp @@ -313,12 +313,12 @@ (let ((var-cons (copy-sset constraints))) (sset-intersection var-cons in) (let ((res (single-value-type (node-derived-type ref))) - (not-res *empty-type*)) + (not-res *empty-type*) + (leaf (ref-leaf ref))) (do-elements (con var-cons) (let* ((x (constraint-x con)) (y (constraint-y con)) (not-p (constraint-not-p con)) - (leaf (ref-leaf ref)) (other (if (eq x leaf) y x)) (kind (constraint-kind con))) (case kind -- GitLab