]> code.delx.au - gnu-emacs/blobdiff - lispref/compile.texi
(Event Input Misc): Update unread-command-events.
[gnu-emacs] / lispref / compile.texi
index 1d8823a48c5801b1029fcd571e9da8ba2e281029..1b18e0ee28451ad3e76c4b842d0ca3e1bea9535e 100644 (file)
@@ -412,7 +412,7 @@ automatically @code{eval-and-compile}, the package is loaded both when
 compiling and executing.
 
 @code{autoload} is also effectively @code{eval-and-compile} too.  It's
-recognised when compiling, so uses of such a function don't produce
+recognized when compiling, so uses of such a function don't produce
 ``not known to be defined'' warnings.
 
 Most uses of @code{eval-and-compile} are fairly sophisticated.
@@ -435,15 +435,16 @@ compiler becomes a constant which appears in the compiled program.  If
 you load the source file, rather than compiling it, @var{body} is
 evaluated normally.
 
+@cindex compile-time constant
 If you have a constant that needs some calculation to produce,
-@code{eval-when-compile} can do that done at compile-time.  For
-example,
+@code{eval-when-compile} can do that at compile-time.  For example,
 
 @lisp
 (defvar my-regexp
   (eval-when-compile (regexp-opt '("aaa" "aba" "abb"))))
 @end lisp
 
+@cindex macros, at compile time
 If you're using another package, but only need macros from it (the
 byte compiler will expand those), then @code{eval-when-compile} can be
 used to load it for compiling, but not executing.  For example,
@@ -456,7 +457,7 @@ used to load it for compiling, but not executing.  For example,
 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 compability with other versions of Emacs.
+that's only a fallback for compatibility with other versions of Emacs.
 For example.
 
 @lisp