X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Ftypetran.lisp;h=03b4c0b5f6e95b6dcc63880c2ebd016979e7d712;hb=be9cdb85e4bc90f81e5ab97987286971d3303ba7;hp=1a332aa000e1ac09baa281ddcef39215a7b45580;hpb=1817553af5c3e33486994d5d4079fca26d910ffd;p=sbcl.git diff --git a/src/compiler/typetran.lisp b/src/compiler/typetran.lisp index 1a332aa..03b4c0b 100644 --- a/src/compiler/typetran.lisp +++ b/src/compiler/typetran.lisp @@ -87,7 +87,7 @@ ;;; whether the single argument is known to (not) be of the ;;; appropriate type, expanding to T or NIL as appropriate. (deftransform fold-type-predicate ((object) * * :node node :defun-only t) - (let ((ctype (gethash (leaf-name + (let ((ctype (gethash (leaf-source-name (ref-leaf (continuation-use (basic-combination-fun node)))) @@ -145,7 +145,7 @@ ;;;; ;;;; See also VM dependent transforms. -(def-source-transform atom (x) +(define-source-transform atom (x) `(not (consp ,x))) ;;;; TYPEP source transform @@ -485,7 +485,7 @@ ;;; to that predicate. Otherwise, we dispatch off of the type's type. ;;; These transformations can increase space, but it is hard to tell ;;; when, so we ignore policy and always do them. -(def-source-transform typep (object spec) +(define-source-transform typep (object spec) ;; KLUDGE: It looks bad to only do this on explicitly quoted forms, ;; since that would overlook other kinds of constants. But it turns ;; out that the DEFTRANSFORM for TYPEP detects any constant