Hi -
I just tried to load the latest CFFI from darcs into CCL 1.2, and I
got a symbol conflict between CCL:COPY-FILE and ALEXANDRIA.0.DEV:COPY-
FILE:
CL-USER> (asdf:oos 'asdf:load-op :cffi)
; loading system definition from /Users/dkatz/dev/lisp/libs/clbuild/
systems/cffi.asd into #<Package "ASDF0">
; registering #<SYSTEM CFFI #x8754B3E> as CFFI
; loading system definition from /Users/dkatz/dev/lisp/libs/clbuild/
systems/babel.asd into #<Package "ASDF0">
; registering #<SYSTEM BABEL #x87910EE> as BABEL
; loading system definition from /Users/dkatz/dev/lisp/libs/clbuild/
systems/alexandria.asd into #<Package "ASDF0">
; registering #<SYSTEM :ALEXANDRIA #x87BA8B6> as ALEXANDRIA
; loading system definition from /Users/dkatz/dev/lisp/libs/clbuild/
systems/trivial-features.asd into #<Package "ASDF0">
; registering #<SYSTEM TRIVIAL-FEATURES #x86F53D6> as TRIVIAL-FEATURES
Using #<Package "CCL"> in #<Package "CFFI-SYS">
would cause name conflicts with symbols inherited by that package:
ALEXANDRIA.0.DEV:COPY-FILE COPY-FILE
[Condition of type CCL::USE-PACKAGE-CONFLICT-ERROR]
Restarts:
0: [CONTINUE] Try again to use #<Package "CCL"> in #<Package "CFFI-
SYS">
1: [RESOLVE-BY-SHADOWING-IMPORT] SHADOWING-IMPORT one of each pair
of conflicting symbols.
2: [RETRY-COMPILE-FILE] Retry compiling #P"/Users/dkatz/dev/lisp/
libs/clbuild/source/cffi/src/cffi-openmcl.lisp"
3: [SKIP-COMPILE-FILE] Skip compiling #P"/Users/dkatz/dev/lisp/
libs/clbuild/source/cffi/src/cffi-openmcl.lisp"
4: [RETRY] Retry performing #<COMPILE-OP NIL #x85D71C6> on #<CL-
SOURCE-FILE "cffi-openmcl" #x85C588E>.
5: [ACCEPT] Continue, treating #<COMPILE-OP NIL #x85D71C6> on #<CL-
SOURCE-FILE "cffi-openmcl" #x85C588E> as having been successful.
6: [ABORT] Return to SLIME's top level.
7: [ABORT-BREAK] Reset this process
8: [ABORT] Kill this process
Backtrace:
0: (CCL::USE-PACKAGE-1 #<Package "CFFI-SYS"> #<Package "CCL">)
1: (USE-PACKAGE '("ALEXANDRIA" "CFFI-UTILS" "CCL" "COMMON-LISP")
#<Package "CFFI-SYS">)
2: (CCL::%DEFINE-PACKAGE "CFFI-SYS" 'NIL 'NIL 'NIL 'NIL 'NIL
'("ALEXANDRIA" "CFFI-UTILS" "CCL" "COMMON-LISP") 'NIL 'NIL '("%
CALLBACK" "%DEFCALLBACK" "%FOREIGN-SYMBOL-POINTER"
"WITH-POINTER-TO-VECTOR-DATA" "MAKE-SHAREABLE-BYTE-VECTOR"
"NATIVE-NAMESTRING" "%CLOSE-FOREIGN-LIBRARY"
"%LOAD-FOREIGN-LIBRARY" "%FOREIGN-TYPE-SIZE"
"%FOREIGN-TYPE-ALIGNMENT" ...) 'NIL)
When I look in the CFFI code, the problem seems to come from cffi--
openmcl.lisp where ALEXANDRIA and CCL are both being :use-d without
any shadowing. As far as I can tell, there are no calls to either
COPY-FILE function anywhere in the CFFI code, so it seems to me that
choosing one of these functions to shadow the other should be a
simple affair since it shouldn't matter at all which one is chosen..
Would it be possible to get this fixed?
Thanks.
Dan
_______________________________________________
cffi-devel mailing list
cffi-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel