X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcold%2Fwith-stuff.lisp;h=11965fbaeaa4452dd8fc8206255b750a180a6a9c;hb=f1407e424f1063203af07d2e61ceef58515a4797;hp=47f308680d3ec02e0baf3a84a426767cfeb70299;hpb=82653abf5573c22c691e2243b70647ecdaa6aea8;p=sbcl.git diff --git a/src/cold/with-stuff.lisp b/src/cold/with-stuff.lisp index 47f3086..11965fb 100644 --- a/src/cold/with-stuff.lisp +++ b/src/cold/with-stuff.lisp @@ -65,13 +65,17 @@ ;;; helper functions for WITH-ADDITIONAL-NICKNAMES and WITHOUT-GIVEN-NICKNAMES (defun %with-additional-nickname (package-designator nickname body-fn) + (declare (type function body-fn)) (with-additional-nickname (package-designator nickname) (funcall body-fn))) (defun %without-given-nickname (package-designator nickname body-fn) + (declare (type function body-fn)) (without-given-nickname (package-designator nickname) (funcall body-fn))) (defun %multi-nickname-magic (nd-list single-nn-fn body-fn) + (declare (type function single-nn-fn)) (labels ((multi-nd (nd-list body-fn) ; multiple nickname descriptors + (declare (type function body-fn)) (if (null nd-list) (funcall body-fn) (single-nd (first nd-list) @@ -81,6 +85,7 @@ (destructuring-bind (package-descriptor nickname-list) nd (multi-nn package-descriptor nickname-list body-fn))) (multi-nn (nn-list package-descriptor body-fn) ; multiple nicknames + (declare (type function body-fn)) (if (null nn-list) (funcall body-fn) (funcall single-nn-fn