emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lispref/compile.texi


From: Richard M . Stallman
Subject: [Emacs-diffs] Changes to emacs/lispref/compile.texi
Date: Mon, 14 Feb 2005 05:05:53 -0500

Index: emacs/lispref/compile.texi
diff -c emacs/lispref/compile.texi:1.20 emacs/lispref/compile.texi:1.21
*** emacs/lispref/compile.texi:1.20     Sat May 22 21:58:24 2004
--- emacs/lispref/compile.texi  Mon Feb 14 10:05:53 2005
***************
*** 27,43 ****
  @xref{Loading Non-ASCII}.
  
    In general, any version of Emacs can run byte-compiled code produced
! by recent earlier versions of Emacs, but the reverse is not true.  A
! major incompatible change was introduced in Emacs version 19.29, and
! files compiled with versions since that one will definitely not run
! in earlier versions unless you specify a special option.
! @iftex
! @xref{Docs and Compilation}.
! @end iftex
! In addition, the modifier bits in keyboard characters were renumbered in
! Emacs 19.29; as a result, files compiled in versions before 19.29 will
! not work in subsequent versions if they contain character constants with
! modifier bits.
  
  @vindex no-byte-compile
    If you do not want a Lisp file to be compiled, ever, put a file-local
--- 27,33 ----
  @xref{Loading Non-ASCII}.
  
    In general, any version of Emacs can run byte-compiled code produced
! by recent earlier versions of Emacs, but the reverse is not true.
  
  @vindex no-byte-compile
    If you do not want a Lisp file to be compiled, ever, put a file-local
***************
*** 122,127 ****
--- 112,120 ----
  details, see @ref{Compiling Macros}.  If a program does not work the
  same way when compiled as it does when interpreted, erroneous macro
  definitions are one likely cause (@pxref{Problems with Macros}).
+ Inline (@code{defsubst}) functions are less troublesome; if you
+ compile a call to such a function before its definition is known, the
+ call will still work right, it will just run slower.
  
    Normally, compiling a file does not evaluate the file's contents or
  load the file.  But it does execute any @code{require} calls at top
***************
*** 313,326 ****
  occasionally if you edit and recompile Lisp files.  When it happens, you
  can cure the problem by reloading the file after recompiling it.
  
!   Byte-compiled files made with recent versions of Emacs (since 19.29)
! will not load into older versions because the older versions don't
! support this feature.  You can turn off this feature at compile time by
! setting @code{byte-compile-dynamic-docstrings} to @code{nil}; then you
! can compile files that will load into older Emacs versions.  You can do
! this globally, or for one source file by specifying a file-local binding
! for the variable.  One way to do that is by adding this string to the
! file's first line:
  
  @example
  -*-byte-compile-dynamic-docstrings: nil;-*-
--- 306,318 ----
  occasionally if you edit and recompile Lisp files.  When it happens, you
  can cure the problem by reloading the file after recompiling it.
  
!   You can turn off this feature at compile time by setting
! @code{byte-compile-dynamic-docstrings} to @code{nil}; this is useful
! mainly if you expect to change the file, and you want Emacs processes
! that have already loaded it to keep working when the file changes.
! You can do this globally, or for one source file by specifying a
! file-local binding for the variable.  One way to do that is by adding
! this string to the file's first line:
  
  @example
  -*-byte-compile-dynamic-docstrings: nil;-*-




reply via email to

[Prev in Thread] Current Thread [Next in Thread]