Reorder file loading and fix define-setf-expander
authorDavid Vázquez <davazp@gmail.com>
Fri, 30 Aug 2013 23:37:42 +0000 (01:37 +0200)
committerDavid Vázquez <davazp@gmail.com>
Fri, 30 Aug 2013 23:37:42 +0000 (01:37 +0200)
jscl.lisp
src/boot.lisp

index 127fd02..8378417 100644 (file)
--- a/jscl.lisp
+++ b/jscl.lisp
     ("sequence"      :target)
     ("stream"        :target)
     ("print"         :target)
-    ("package"       :target)
-    ("misc"          :target)
     ("documentation" :target)
-    ("ffi"           :both)
+    ("misc"          :target)
+    ("ffi"           :target)
+    ("package"       :target)
+
     ("read"          :both)
     ("defstruct"     :both)
     ("lambda-list"   :both)
index 8764aa2..821c482 100644 (file)
 (defmacro define-setf-expander (access-fn lambda-list &body body)
   (unless (symbolp access-fn)
     (error "ACCESS-FN `~S' must be a symbol." access-fn))
-  `(progn (push (cons ',access-fn (lambda ,lambda-list ,@body))
-                *setf-expanders*)
-          ',access-fn))
+  `(eval-when (:compile-toplevel :load-toplevel :execute)
+     (push (cons ',access-fn (lambda ,lambda-list ,@body))
+           *setf-expanders*)
+     ',access-fn))
 
 (defmacro setf (&rest pairs)
   (cond