package-definition-lock

$Revision: 5.0.2.2 $

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 excl:*enable-package-locked-errors* is nil;
  2. the violation is dynamically inside the body of a call to the macro excl:without-package-locks;
  3. the value of cl:*package* is the home package of the symbol being operated on; or
  4. the list returned by excl:package-implementation-packages applied to the value of cl:*package* contains the home package of the symbol being operated upon.

Implementation packages are defined in 5.3 Implementation packages in packages.htm. See also package-implementation-packages.

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 for general information on the implementation of packages in Allegro CL. See 5.2 Package definition locking in that document for more information on package definition locking.

The general documentation description is in introduction.htm. The index is in index.htm.

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