diff options
Diffstat (limited to 'lispref/compile.texi')
-rw-r--r-- | lispref/compile.texi | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/lispref/compile.texi b/lispref/compile.texi index 007a4a6b094..001466d500d 100644 --- a/lispref/compile.texi +++ b/lispref/compile.texi @@ -3,7 +3,7 @@ @c Copyright (C) 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @setfilename ../info/compile -@node Byte Compilation, Advising, Loading, Top +@node Byte Compilation, Advising Functions, Loading, Top @chapter Byte Compilation @cindex byte-code @cindex compilation @@ -20,6 +20,12 @@ hardware (as true compiled code is), byte-code is completely transportable from machine to machine without recompilation. It is not, however, as fast as true compiled code. + Compiling a Lisp file with the Emacs byte compiler always reads the +file as multibyte text, even if Emacs was started with @samp{--unibyte}, +unless the file specifies otherwise. This is so that compilation gives +results compatible with running the same file without compilation. +@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 @@ -164,9 +170,10 @@ function. @end deffn @deffn Command byte-compile-file filename -This function compiles a file of Lisp code named @var{filename} into -a file of byte-code. The output file's name is made by appending -@samp{c} to the end of @var{filename}. +This function compiles a file of Lisp code named @var{filename} into a +file of byte-code. The output file's name is made by changing the +@samp{.el} suffix into @samp{.elc}; if @var{filename} does not end in +@samp{.el}, it adds @samp{.elc} to the end of @var{filename}. Compilation works by reading the input file one form at a time. If it is a definition of a function or macro, the compiled function or macro |