comparison lisp/emacs-lisp/bytecomp.el @ 37909:3d650ae7e609

(byte-compile-file-form-autoload): Use the same definition in byte-compile-function-environment as `autoload' would put in `symbol-function'.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sun, 27 May 2001 11:40:30 +0000
parents 85b1d35e08bd
children 253f761ad37b
comparison
equal deleted inserted replaced
37908:ba28e6b7a67b 37909:3d650ae7e609
8 ;; Maintainer: FSF 8 ;; Maintainer: FSF
9 ;; Keywords: lisp 9 ;; Keywords: lisp
10 10
11 ;;; This version incorporates changes up to version 2.10 of the 11 ;;; This version incorporates changes up to version 2.10 of the
12 ;;; Zawinski-Furuseth compiler. 12 ;;; Zawinski-Furuseth compiler.
13 (defconst byte-compile-version "$Revision: 2.81 $") 13 (defconst byte-compile-version "$Revision: 2.82 $")
14 14
15 ;; This file is part of GNU Emacs. 15 ;; This file is part of GNU Emacs.
16 16
17 ;; GNU Emacs is free software; you can redistribute it and/or modify 17 ;; GNU Emacs is free software; you can redistribute it and/or modify
18 ;; it under the terms of the GNU General Public License as published by 18 ;; it under the terms of the GNU General Public License as published by
1834 (eq (car (nth 1 form)) 'quote) 1834 (eq (car (nth 1 form)) 'quote)
1835 (consp (cdr (nth 1 form))) 1835 (consp (cdr (nth 1 form)))
1836 (symbolp (nth 1 (nth 1 form)))) 1836 (symbolp (nth 1 (nth 1 form))))
1837 (add-to-list 'byte-compile-function-environment 1837 (add-to-list 'byte-compile-function-environment
1838 (cons (nth 1 (nth 1 form)) 1838 (cons (nth 1 (nth 1 form))
1839 form))) 1839 (cons 'autoload (cdr (cdr form))))))
1840 (if (stringp (nth 3 form)) 1840 (if (stringp (nth 3 form))
1841 form 1841 form
1842 ;; No doc string, so we can compile this as a normal form. 1842 ;; No doc string, so we can compile this as a normal form.
1843 (byte-compile-keep-pending form 'byte-compile-normal-call))) 1843 (byte-compile-keep-pending form 'byte-compile-normal-call)))
1844 1844
3639 (eval-when-compile 3639 (eval-when-compile
3640 (or (byte-code-function-p (symbol-function 'byte-compile-form)) 3640 (or (byte-code-function-p (symbol-function 'byte-compile-form))
3641 (assq 'byte-code (symbol-function 'byte-compile-form)) 3641 (assq 'byte-code (symbol-function 'byte-compile-form))
3642 (let ((byte-optimize nil) ; do it fast 3642 (let ((byte-optimize nil) ; do it fast
3643 (byte-compile-warnings nil)) 3643 (byte-compile-warnings nil))
3644 (mapcar '(lambda (x) 3644 (mapcar (lambda (x)
3645 (or noninteractive (message "compiling %s..." x)) 3645 (or noninteractive (message "compiling %s..." x))
3646 (byte-compile x) 3646 (byte-compile x)
3647 (or noninteractive (message "compiling %s...done" x))) 3647 (or noninteractive (message "compiling %s...done" x)))
3648 '(byte-compile-normal-call 3648 '(byte-compile-normal-call
3649 byte-compile-form 3649 byte-compile-form
3650 byte-compile-body 3650 byte-compile-body
3651 ;; Inserted some more than necessary, to speed it up. 3651 ;; Inserted some more than necessary, to speed it up.
3652 byte-compile-top-level 3652 byte-compile-top-level