Mercurial > emacs
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 |