Mercurial > emacs
changeset 47531:e7f753af9ceb
(byte-compile-output-docform): Don't make the definition dynamic if it
shares structure with the arg list.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 18 Sep 2002 16:02:49 +0000 |
parents | cfea5643ff62 |
children | e5d8cf249294 |
files | lisp/emacs-lisp/bytecomp.el |
diffstat | 1 files changed, 13 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/bytecomp.el Wed Sep 18 16:02:14 2002 +0000 +++ b/lisp/emacs-lisp/bytecomp.el Wed Sep 18 16:02:49 2002 +0000 @@ -10,7 +10,7 @@ ;;; This version incorporates changes up to version 2.10 of the ;;; Zawinski-Furuseth compiler. -(defconst byte-compile-version "$Revision: 2.113 $") +(defconst byte-compile-version "$Revision: 2.114 $") ;; This file is part of GNU Emacs. @@ -1924,7 +1924,18 @@ (while (setq form (cdr form)) (setq index (1+ index)) (insert " ") - (cond ((and (numberp specindex) (= index specindex)) + (cond ((and (numberp specindex) (= index specindex) + ;; Don't handle the definition dynamically + ;; if it refers (or might refer) + ;; to objects already output + ;; (for instance, gensyms in the arg list). + (let (non-nil) + (dotimes (i (length print-number-table)) + (if (aref print-number-table i) + (setq non-nil t))) + (not non-nil))) + ;; Output the byte code and constants specially + ;; for lazy dynamic loading. (let ((position (byte-compile-output-as-comment (cons (car form) (nth 1 form))