From 715534cc2f2bb9a0f448762a7c6030d508da46f8 Mon Sep 17 00:00:00 2001 From: dtc <dtc> Date: Tue, 23 May 2000 06:52:09 +0000 Subject: [PATCH] The %instance-typep transform must be applied when both native and byte compiling because typep may be source transformed to %instance-typep even when byte-compiling as the (not (byte-compiling)) test is just a best guess. Fix spotted by Raymond Toy; problem noted by William Harold Newman. --- compiler/typetran.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/typetran.lisp b/compiler/typetran.lisp index 344b15bd0..71fd334e4 100644 --- a/compiler/typetran.lisp +++ b/compiler/typetran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/typetran.lisp,v 1.36 2000/05/02 04:44:28 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/typetran.lisp,v 1.37 2000/05/23 06:52:09 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -428,7 +428,7 @@ ;;; for the object is invalid and signal an error if so. Otherwise, look up ;;; the indirect class-cell and call CLASS-CELL-TYPEP at runtime. ;;; -(deftransform %instance-typep ((object spec)) +(deftransform %instance-typep ((object spec) (* *) * :when :both) (assert (constant-continuation-p spec)) (let* ((spec (continuation-value spec)) (class (specifier-type spec)) -- GitLab