On Mon, Aug 1, 2011 at 8:39 PM, Matthew Mondor <firstname.lastname@example.org>
contrib/defsystem/defsystem.lisp:4019: (setf *package* package)))))
contrib/defsystem/defsystem.lisp:4100: (setf *package* (find-package old-package)))
External package. Probably wrong: they should have established a binding for *package* outside.
src/bare.lsp.in:34:(setq *package* (find-package "SYSTEM"))
: (setq *package* (find-package "SYSTEM"))
Only used when building ECL. No problem.
src/c/cinit.d:144: ECL_SET(@'*package*', cl_core.system_package);
src/c/main.d:699: ECL_SET(@'*package*', cl_core.lisp_package);
src/c/main.d:708: ECL_SET(@'*package*', cl_core.user_package);
Again initialization. Safe uses
src/c/package.d:339: ECL_SETQ(env, @'*package*', cl_core.user_package);
This only happens when *package* had a bogus value.
src/c/package.d:841: @(return (ECL_SETQ(the_env, @'*package*', p)))
These is the routine that actually implement IN-PACKAGE (saves some bytes).
src/lsp/defpackage.lsp:202: (setf (documentation *package* t) documentation))
So it seems we are pretty safe.