X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Ffull-eval.lisp;h=08af2682b5400462c95b3803a37a2d7cffbbfd0c;hb=09a00b3120e7dd6d040cf70fbaaa1af32b890ee3;hp=5079abca017ea5c598f54c554f0f3250d56b7f55;hpb=5d4cadcc92642f2a23743a5458a23aa9dc544db2;p=sbcl.git diff --git a/src/code/full-eval.lisp b/src/code/full-eval.lisp index 5079abc..08af268 100644 --- a/src/code/full-eval.lisp +++ b/src/code/full-eval.lisp @@ -522,9 +522,7 @@ (t (values (cdr binding) :variable))) (case (sb!int:info :variable :kind symbol) (:macro (values (macroexpand-1 symbol) :expansion)) - (:alien (let ((type (sb!int:info :variable :alien-info symbol))) - (values (sb!alien::%heap-alien type) - :variable))) + (:alien (values (sb!alien-internals:alien-value symbol) :variable)) (t (values (symbol-value symbol) :variable)))))) ;;; Retrieve the function/macro binding of the symbol NAME in @@ -544,10 +542,8 @@ ;;; Return true if EXP is a lambda form. (defun lambdap (exp) - (case (car exp) ((lambda - sb!int:named-lambda - sb!kernel:instance-lambda) - t))) + (case (car exp) + ((lambda sb!int:named-lambda) t))) ;;; Split off the declarations (and the docstring, if ;;; DOC-STRING-ALLOWED is true) from the actual forms of BODY. @@ -577,7 +573,7 @@ ;;; in the environment ENV. (defun eval-lambda (exp env) (case (car exp) - ((lambda sb!kernel:instance-lambda) + ((lambda) (multiple-value-bind (body documentation declarations) (parse-lambda-headers (cddr exp) :doc-string-allowed t) (make-interpreted-function :lambda-list (second exp)