diff --git a/uiop/os.lisp b/uiop/os.lisp index 0de9bd34103eb260c509056e12011befb7bbb3ba..6d7afebe520813a1b178139f2debb8205e87e7dd 100644 --- a/uiop/os.lisp +++ b/uiop/os.lisp @@ -278,7 +278,7 @@ suitable for use as a directory name to segregate Lisp FASLs, C dynamic librarie #+genera (setf *default-pathname-defaults* x) #+lispworks (hcl:change-directory x) #+mkcl (mk-ext:chdir x) - #+sbcl (symbol-call :sb-posix :chdir (sb-ext:native-namestring x)) + #+sbcl (progn (require :sb-posix) (symbol-call :sb-posix :chdir (sb-ext:native-namestring x))) (error "chdir not supported on your implementation"))))) diff --git a/uiop/utility.lisp b/uiop/utility.lisp index a9c422725781387158983afea8a9f30edfefd599..230c0c76fd81c79cee4eb9a106863c50685400b4 100644 --- a/uiop/utility.lisp +++ b/uiop/utility.lisp @@ -380,6 +380,7 @@ and EVAL that in a (FUNCTION ...) context." (etypecase fun (function fun) ((or boolean keyword character number pathname) (constantly fun)) + (hash-table (lambda (x) (gethash x fun))) (symbol (fdefinition fun)) (cons (if (eq 'lambda (car fun)) (eval fun)