All Manuals > LispWorks® User Guide and Reference Manual > 38 The LISPWORKS Package

*handle-warn-on-redefinition* Variable

Summary

Specifies the action on defining a symbol in certain packages.

Package

lispworks

Initial Value

:error

Description

The variable *handle-warn-on-redefinition* specifies what action should be taken on defining external symbols in certain packages. It is designed to protect against (re)definition of symbols in implementation packages.

The protected packages are those specified in the variable *packages-for-warn-on-redefinition*.

If *handle-warn-on-redefinition* is set to :warn then you are warned. If it is set to :quiet or nil, the definition is done quietly. If, however, it is set to :error, then LispWorks signals an error.

Notes

The checking is useful because it is relatively easy to redefine an external symbol by mistake, and it leads to undefined behavior which is difficult to debug. It is therefore a bad idea to change the value of *handle-warn-on-redefinition* to something else. If required, do this by rebinding *handle-warn-on-redefinition* rather than setting its global value.

See also

*packages-for-warn-on-redefinition*
*redefinition-action*
7.7.2.2 Protecting packages


LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:41