*cltl1-compile-file-toplevel-compatibility-p*

$Revision: 5.0.2.4 $

Variable

Package: COMPILER

If the value of this variable is true, CLtL-1 compile-time-too behavior will be used when compiling a file. That means that top-level forms calling the functions listed below need not be wrapped in an appropriate eval-when form in order for them to have effect while a file is being compiled. If the value is the symbol warn (which is the initial value), a warning will be printed whenever a form is encountered where CLtL-1 compile-time-too behavior is used. (Note: it is likely that complex files will generate many warnings.) If the value is nil, ANSI compile-time-too behavior is used. We recommend that you modify all files to conform to ANSI behavior as soon as possible.

By compile-time-too behavior, we refer to the effect of certain top-level forms in a file being compiled. In CLtL-1, top-level forms which were calling the functions listed below were treated as if they were wrapped in an

(eval-when (compile))

form. That behavior has been changed in the new standard and you must wrap such forms in appropriate eval-when forms if they are to have effect while a file is being compiled. The affected functions are:

proclaim
make-package
shadow
shadowing-import
import
export
unexport
use-package
unuse-package
require

See compiling.htm for information on the compiler.

See introduction.htm for a general description of the documentation and index.htm for an index.

Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.