X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fcheckgen.lisp;h=2d983771f98be9333d5df442d66e67eee3e8ee80;hb=0cfad881b88e03971a2b3ef0c0c0fc2e5f4f1bc8;hp=3441ad69af727571dd733285a7e80842de2dc057;hpb=a8fa26a6e9804d3548f5bca9361a91345a689099;p=sbcl.git diff --git a/src/compiler/checkgen.lisp b/src/compiler/checkgen.lisp index 3441ad6..2d98377 100644 --- a/src/compiler/checkgen.lisp +++ b/src/compiler/checkgen.lisp @@ -114,7 +114,7 @@ (declare (type ctype type)) (multiple-value-bind (res count) (values-types type) (values (mapcar #'(lambda (type) - (if (function-type-p type) + (if (fun-type-p type) (specifier-type 'function) type)) res) @@ -130,7 +130,7 @@ ;;; the proven type and the corresponding type in TYPES. If so, we opt ;;; for a :HAIRY check with that test negated. Otherwise, we try to do ;;; a simple test, and if that is impossible, we do a hairy test with -;;; non-negated types. If true, Force-Hairy forces a hairy type check. +;;; non-negated types. If true, FORCE-HAIRY forces a hairy type check. ;;; ;;; When doing a non-negated check, we call MAYBE-WEAKEN-CHECK to ;;; weaken the test to a convenient supertype (conditional on policy.) @@ -263,7 +263,8 @@ (declare (type continuation cont)) (let ((dest (continuation-dest cont))) (cond ((eq (continuation-type-check cont) :error) - (if (and (combination-p dest) (eq (combination-kind dest) :error)) + (if (and (combination-p dest) + (eq (combination-kind dest) :error)) nil t)) ((or (not dest) @@ -301,7 +302,7 @@ `(multiple-value-bind ,temps 'dummy ,@(mapcar #'(lambda (temp type) (let* ((spec - (let ((*unparse-function-type-simplify* t)) + (let ((*unparse-fun-type-simplify* t)) (type-specifier (second type)))) (test (if (first type) `(not ,spec) spec))) `(unless (typep ,temp ',test) @@ -393,7 +394,7 @@ (substitute-continuation new-start victim))) ;; Invoking local call analysis converts this call to a LET. - (local-call-analyze *current-component*)) + (locall-analyze-component *current-component*)) (values)) @@ -416,7 +417,8 @@ (format nil "~:[A possible~;The~] binding of ~S" (and (continuation-use cont) (eq (functional-kind lambda) :let)) - (leaf-name (elt (lambda-vars lambda) pos))))))) + (leaf-source-name (elt (lambda-vars lambda) + pos))))))) (cond ((eq dtype *empty-type*)) ((and (ref-p node) (constant-p (ref-leaf node))) (compiler-warning "~:[This~;~:*~A~] is not a ~<~%~9T~:;~S:~>~% ~S" @@ -446,7 +448,7 @@ (setf (basic-combination-kind dest) :error))) (values)) -;;; Loop over all blocks in Component that have TYPE-CHECK set, +;;; Loop over all blocks in COMPONENT that have TYPE-CHECK set, ;;; looking for continuations with TYPE-CHECK T. We do two mostly ;;; unrelated things: detect compile-time type errors and determine if ;;; and how to do run-time type checks. @@ -489,8 +491,7 @@ (mark-error-continuation cont) (unless (policy node (= inhibit-warnings 3)) (do-type-warning use)))))) - (when (and (eq type-check t) - (not *byte-compiling*)) + (when (eq type-check t) (cond ((probable-type-check-p cont) (conts cont)) (t