changeset 76300:656132bca5c0

(Eval During Compile): Clarify putting macros in eval-when-compile.
author Richard M. Stallman <rms@gnu.org>
date Sun, 04 Mar 2007 17:55:23 +0000
parents 08cc2843c940
children fec7d780a786
files lispref/compile.texi
diffstat 1 files changed, 8 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lispref/compile.texi	Sun Mar 04 17:53:41 2007 +0000
+++ b/lispref/compile.texi	Sun Mar 04 17:55:23 2007 +0000
@@ -454,11 +454,10 @@
   (require 'my-macro-package))  ;; only macros needed from this
 @end lisp
 
-The same sort of thing goes for macros or @code{defalias}es defined
-locally and only for use within the file.  They can be defined while
-compiling, but then not needed when executing.  This is good for code
-that's only a fallback for compatibility with other versions of Emacs.
-For example.
+The same sort of thing goes for macros and @code{defsubst} functions
+defined locally and only for use within the file.  They are needed for
+compiling the file, but in most cases they are not needed for
+execution of the compiled file.  For example,
 
 @lisp
 (eval-when-compile
@@ -467,6 +466,10 @@
       (compatibility code))))
 @end lisp
 
+@noindent
+This is often good for code that's only a fallback for compatibility
+with other versions of Emacs.
+
 @strong{Common Lisp Note:} At top level, @code{eval-when-compile} is analogous to the Common
 Lisp idiom @code{(eval-when (compile eval) @dots{})}.  Elsewhere, the
 Common Lisp @samp{#.} reader macro (but not when interpreting) is closer