Mercurial > emacs
changeset 102460:d9ecdef72984
(Compiling Macros): Omit misleading sentence, which implied that
macros can only be used in the same file they are defined.
(Backquote): Remove obsolete information about Emacs 19.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Tue, 10 Mar 2009 00:43:20 +0000 |
parents | 37cbfaa1822f |
children | 195338d6f3e5 |
files | doc/lispref/macros.texi |
diffstat | 1 files changed, 6 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/lispref/macros.texi Tue Mar 10 00:43:07 2009 +0000 +++ b/doc/lispref/macros.texi Tue Mar 10 00:43:20 2009 +0000 @@ -178,16 +178,13 @@ already be defined in Lisp when the calls to them are compiled. The compiler has a special feature to help you do this: if a file being compiled contains a @code{defmacro} form, the macro is defined -temporarily for the rest of the compilation of that file. To make this -feature work, you must put the @code{defmacro} in the same file where it -is used, and before its first use. +temporarily for the rest of the compilation of that file. - Byte-compiling a file executes any @code{require} calls at top-level -in the file. This is in case the file needs the required packages for -proper compilation. One way to ensure that necessary macro definitions -are available during compilation is to require the files that define -them (@pxref{Named Features}). To avoid loading the macro definition files -when someone @emph{runs} the compiled program, write + Byte-compiling a file also executes any @code{require} calls at +top-level in the file, so you can ensure that necessary macro +definitions are available during compilation by requiring the files +that define them (@pxref{Named Features}). To avoid loading the macro +definition files when someone @emph{runs} the compiled program, write @code{eval-when-compile} around the @code{require} calls (@pxref{Eval During Compile}). @@ -356,17 +353,6 @@ @end group @end example -In old Emacs versions, before version 19.29, @samp{`} used a different -syntax which required an extra level of parentheses around the entire -backquote construct. Likewise, each @samp{,} or @samp{,@@} substitution -required an extra level of parentheses surrounding both the @samp{,} or -@samp{,@@} and the following expression. The old syntax required -whitespace between the @samp{`}, @samp{,} or @samp{,@@} and the -following expression. - -This syntax is still accepted, for compatibility with old Emacs -versions, but support for it will be removed in the future. - @node Problems with Macros @section Common Problems Using Macros