;;; but my head is currently spinning (host? target? both?) so I'll go
;;; for the minimal changeset... -- CSR, 2002-05-11
(defmacro def!constant (&whole whole name value &optional doc)
+ (declare (ignore value doc #-sb-xc-host name))
`(progn
#-sb-xc-host
(defconstant ,@(cdr whole))
#+sb-xc-host
,(unless (eql (find-symbol (symbol-name name) :cl) name)
- `(defconstant ,@(cdr whole)))
- #+sb-xc-host
+ `(defconstant ,@(cdr whole)))
+ #+sb-xc-host
,(let ((form `(sb!xc:defconstant ,@(cdr whole))))
- (if (boundp '*delayed-def!constants*)
- `(push ',form *delayed-def!constants*)
- form))))
+ (if (boundp '*delayed-def!constants*)
+ `(push ',form *delayed-def!constants*)
+ form))))
;;; machinery to implement DEF!CONSTANT delays
#+sb-xc-host
(/show "done binding *DELAYED-DEF!CONSTANTS*")
(defun force-delayed-def!constants ()
(if (boundp '*delayed-def!constants*)
- (progn
- (mapc #'eval *delayed-def!constants*)
- (makunbound '*delayed-def!constants*))
- ;; This condition is probably harmless if it comes up when
- ;; interactively experimenting with the system by loading a
- ;; source file into it more than once. But it's worth warning
- ;; about it because it definitely shouldn't come up in an
- ;; ordinary build process.
- (warn "*DELAYED-DEF!CONSTANTS* is already unbound."))))
+ (progn
+ (mapc #'eval *delayed-def!constants*)
+ (makunbound '*delayed-def!constants*))
+ ;; This condition is probably harmless if it comes up when
+ ;; interactively experimenting with the system by loading a
+ ;; source file into it more than once. But it's worth warning
+ ;; about it because it definitely shouldn't come up in an
+ ;; ordinary build process.
+ (warn "*DELAYED-DEF!CONSTANTS* is already unbound."))))