In article <[EMAIL PROTECTED]>, Romain Francoise <[EMAIL PROTECTED]> writes:
> Kenichi Handa <[EMAIL PROTECTED]> writes:
> > The process of byte compiling them is, I think, not that slow; for
> > instance, I can byte-compile ZIRANMA.el in 1.5 second.
> Does your Emacs binary include the byte-compiler change mentioned
> earlier in this thread?
Ah, no! I've just updated my working directory and faced
with that extreme slowness in byte compiling
leim/ja-dic/ja-dic.el.
Miles Bader <[EMAIL PROTECTED]> writes:
> If the former, perhaps we should add a variable to control whether the byte
> compiler tries to correctly dump circular data structures or not
> (`byte-compile-circle'?), and bind it to nil when compiling those large
> files as we know they contain no circular data.
It seems that we need such a hack. How about something like
the attached patch and add:
-*- byte-compile-disable-print-circle:t; -*-
at the head of all generated quail files and ja-dic.el?
---
Kenichi Handa
[EMAIL PROTECTED]
*** bytecomp.el 25 Jan 2007 17:11:39 +0900 2.192
--- bytecomp.el 25 Jan 2007 21:22:12 +0900
***************
*** 296,301 ****
--- 296,305 ----
the functions you loaded will not be able to run.")
;;;###autoload(put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
+ (defvar byte-compile-disable-print-circle nil
+ "If non-nil, disable `print-circle' on printing a byte-compiled code.")
+ ;;;###autoload(put 'byte-compile-disable-print-circle 'safe-local-variable
'booleanp)
+
(defcustom byte-compile-dynamic-docstrings t
"*If non-nil, compile doc strings for lazy access.
We bury the doc strings of functions and variables
***************
*** 2003,2009 ****
(print-level nil)
(print-quoted t)
(print-gensym t)
! (print-circle t)) ; handle circular data structures
(princ "\n" outbuffer)
(prin1 form outbuffer)
nil)))
--- 2007,2014 ----
(print-level nil)
(print-quoted t)
(print-gensym t)
! (print-circle ; handle circular data structures
! (not byte-compile-disable-print-circle)))
(princ "\n" outbuffer)
(prin1 form outbuffer)
nil)))
***************
*** 2060,2066 ****
;; print-gensym-alist not to be cleared
;; between calls to print functions.
(print-gensym '(t))
! (print-circle t) ; handle circular data structures
print-gensym-alist ; was used before print-circle existed.
(print-continuous-numbering t)
print-number-table
--- 2065,2072 ----
;; print-gensym-alist not to be cleared
;; between calls to print functions.
(print-gensym '(t))
! (print-circle ; handle circular data structures
! (not byte-compile-disable-print-circle))
print-gensym-alist ; was used before print-circle existed.
(print-continuous-numbering t)
print-number-table
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug