package-definition-lock

Function

Package: excl

Arguments: package

Returns t or nil as package is or is not definition-locked. package must be a package object (it cannot be a symbol or a string). setf may be used with this function to definition-lock or unlock a package.

Even if a package is package-definition-locked, no error will be signaled when

  1. the value of *enable-package-locked-errors* is nil;
  2. the violation is dynamically inside the body of a call to the macro without-package-locks;
  3. the value of *package* is the home package of the symbol being operated on; or
  4. the list returned by package-implementation-packages applied to the value of *package* contains the home package of the symbol being operated upon.

If a package-definition-lock violation is encountered while compiling a file, a warning is signaled rather than an error. If the resulting fasl file is loaded, an error will then be signaled.

See packages.htm, particularly sections Package definition locking and Implementation packages, and package-implementation-packages.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.