[Bug-openmcl] asdf gensym problem

bryan o'connor bryan-openmcl at lunch.org
Sun Jul 31 21:21:49 MDT 2005


if asdf is used before gensym has been called for the
first time (*gensym-counter* is 0 or 1), it will sometimes
fail trying to make-package an existing package (asdf1).
the package name is generated with (gensym "asdf").

since turning on trace avoids the problem because it calls
gensym, the transcript below is broken into two sessions.

 > openmcl -n
Welcome to OpenMCL Version (Beta: DarwinPPC32) 0.14.4-pre-050729!
? (require :asdf)
:ASDF
("ASDF")
? (pushnew #4p"home:lib;asdf-systems;" asdf:*central-registry*)
(#P"home:lib;asdf-systems;" *DEFAULT-PATHNAME-DEFAULTS*)
? (find-package :asdf)
#<Package "ASDF">
? (find-package :asdf1)
#<Package "ASDF1">
? *gensym-counter*
0
? (require :lisppaste)
 > Error in process listener(1): Package name "ASDF1" is already in use.
 > While executing: CCL::NEW-PACKAGE-NAME


 > openmcl -n
Welcome to OpenMCL Version (Beta: DarwinPPC32) 0.14.4-pre-050729!
;; having already loaded asdf, etc..
;;
? (trace make-package gensym)
NIL
? (require :lisppaste)
Calling (GENSYM "ASDF")
GENSYM returned #:ASDF4
Calling (MAKE-PACKAGE #:ASDF4 :USE (:CL :ASDF))
MAKE-PACKAGE returned #<Package "ASDF4">
Calling (MAKE-PACKAGE "LISPPASTE-SYSTEM" :USE NIL :INTERNAL-SIZE  
60 :EXTERNAL-SIZE 1)
MAKE-PACKAGE returned #<Package "LISPPASTE-SYSTEM">
Calling (GENSYM "ASDF")
GENSYM returned #:ASDF5
Calling (MAKE-PACKAGE #:ASDF5 :USE (:CL :ASDF))
MAKE-PACKAGE returned #<Package "ASDF5">
...


not sure exactly the problem -- *gensym-counter* being 0 in
the image, the asdf and asdf1 packages existing in the image,
or the fact that asdf uses gensym to name packages.

i think this only recently started happening.

       ...bryan



More information about the Bug-openmcl mailing list