mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-08 23:40:24 -08:00
Undo last change
because it breaks '(make-variable-buffer-local (defvar ...)' which is used at least in dired.
This commit is contained in:
parent
54fa5bc13a
commit
71246c2c41
2 changed files with 19 additions and 10 deletions
|
|
@ -3220,16 +3220,19 @@ If FORM is a lambda or a macro, byte-compile it as a function."
|
|||
(setq byte-compile-bound-variables
|
||||
(cons var byte-compile-bound-variables)))
|
||||
(byte-compile-body-do-effect
|
||||
(list
|
||||
;; Just as a real defvar would, but only in top-level forms.
|
||||
(when (null byte-compile-current-form)
|
||||
`(push ',var current-load-list))
|
||||
(when (and string (null byte-compile-current-form))
|
||||
`(put ',var 'variable-documentation ,string))
|
||||
(if (cdr (cdr form))
|
||||
(if (eq (car form) 'defconst)
|
||||
`(setq ,var ,value)
|
||||
`(if (boundp ',var) ',var (setq ,var ,value))))))))
|
||||
(list (if (cdr (cdr form))
|
||||
(if (eq (car form) 'defconst)
|
||||
(list 'setq var value)
|
||||
(list 'or (list 'boundp (list 'quote var))
|
||||
(list 'setq var value))))
|
||||
;; Put the defined variable in this library's load-history entry
|
||||
;; just as a real defvar would.
|
||||
(list 'setq 'current-load-list
|
||||
(list 'cons (list 'quote var)
|
||||
'current-load-list))
|
||||
(if string
|
||||
(list 'put (list 'quote var) ''variable-documentation string))
|
||||
(list 'quote var)))))
|
||||
|
||||
(defun byte-compile-autoload (form)
|
||||
(and (byte-compile-constp (nth 1 form))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue