2012-10-11 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/bytecomp.el (byte-compile-eval): Adjust to long-ago
+ changes to the format of load-history.
+
* international/mule-cmds.el (read-char-by-name): Move let-binding of
completion-ignore-case in case that var is buffer-local (bug#12615).
(byte-compile-cl-file-p (car xs))))
(dolist (s xs)
(cond
- ((symbolp s)
- (unless (memq s old-autoloads)
- (push s byte-compile-noruntime-functions)))
((and (consp s) (eq t (car s)))
(push (cdr s) old-autoloads))
- ((and (consp s) (eq 'autoload (car s)))
- (push (cdr s) byte-compile-noruntime-functions)))))))
+ ((and (consp s) (memq (car s) '(autoload defun)))
+ (unless (memq (cdr s) old-autoloads)
+ (push (cdr s) byte-compile-noruntime-functions))))))))
;; Go through current-load-list for the locally defined funs.
(let (old-autoloads)
(while (and hist-nil-new (not (eq hist-nil-new hist-nil-orig)))
+2012-10-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * eval.c (Fautoload): Remember previous autoload status in load-history.
+
2012-10-11 Paul Eggert <eggert@cs.ucla.edu>
lread.c, macros.c, marker.c, menu.c, minibuf.c: Use bool for booleans.
CHECK_STRING (file);
/* If function is defined and not as an autoload, don't override. */
- if (!EQ (XSYMBOL (function)->function, Qunbound)
- && !(CONSP (XSYMBOL (function)->function)
- && EQ (XCAR (XSYMBOL (function)->function), Qautoload)))
+ if ((CONSP (XSYMBOL (function)->function)
+ && EQ (XCAR (XSYMBOL (function)->function), Qautoload)))
+ /* Remember that the function was already an autoload. */
+ LOADHIST_ATTACH (Fcons (Qt, function));
+ else if (!EQ (XSYMBOL (function)->function, Qunbound))
return Qnil;
if (NILP (Vpurify_flag))