Opened 13 years ago
Closed 13 years ago
#311 closed defect (fixed)
UIOP fails to upgrade
| Reported by: | Mark Evenson | Owned by: | ehuelsmann |
|---|---|---|---|
| Priority: | major | Milestone: | 1.2.0 |
| Component: | interpreter | Version: | 1.2.0-dev |
| Keywords: | quicklisp uiop ansi-conformance | Cc: | |
| Parent Tickets: |
Description (last modified by )
UIOP fails to upgrade due to problems in the the UNEXPORT of a symbol that is both the subject of a USE and EXPORT clause in a package. Probably something to do with not properly copying structure on the Java side of things.
Change History (7)
comment:1 Changed 13 years ago by
| Keywords: | quicklisp uiop added |
|---|
comment:2 Changed 13 years ago by
comment:3 Changed 13 years ago by
The text of the ERROR:
The symbol UIOP/UTILITY::LOAD-ASDF-DEBUG-UTILITY is not accessible in package UIOP/DRIVER
comment:4 Changed 13 years ago by
| Component: | libraries → interpreter |
|---|---|
| Keywords: | ansi-conformance added |
| Owner: | changed from Mark Evenson to ehuelsmann |
Faré narrows this to a bug in CL:UNEXPORT:
[1] UIOP/BACKWARD-DRIVER(14): (find-symbol "LOAD-ASDF-DEBUG-UTILITY"
:uiop/utility)
UIOP/UTILITY::LOAD-ASDF-DEBUG-UTILITY
:INTERNAL
[1] UIOP/BACKWARD-DRIVER(15): (find-symbol "LOAD-ASDF-DEBUG-UTILITY"
:uiop/driver)
UIOP/UTILITY::LOAD-ASDF-DEBUG-UTILITY
:EXTERNAL
[1] UIOP/BACKWARD-DRIVER(17): [1] UIOP/BACKWARD-DRIVER(17): (unexport
(find-symbol "LOAD-ASDF-DEBUG-UTILITY" :uiop/driver) :uiop/driver)
Error loading /home/tunes/cl/asdf/build/asdf.lisp at line 5302 (offset 252109)
#<THREAD "interpreter" {7E6AB533}>: Debugger invoked on condition of
type PACKAGE-ERROR
The symbol UIOP/UTILITY::LOAD-ASDF-DEBUG-UTILITY is not accessible
in package UIOP/DRIVER
Restarts:
0: ABORT Return to debug level 1.
comment:5 Changed 13 years ago by
Reproducible case:
(defpackage a (:export :foo)) (defpackage b (:use a) (:export :foo)) (unexport 'a:foo :a) (unexport 'b:foo :b)
will error with
The symbol A::FOO is not accessible in package B
comment:6 Changed 13 years ago by
| Description: | modified (diff) |
|---|---|
| Summary: | UIOP fails to load → UIOP fails to upgrade |
comment:7 Changed 13 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
(In [14449]) Fix UNEXPORT to work on symbols from foreign packages.
No longer check that the symbols which are the target of UNEXPORT are
accessible. Such symbols may be present in a foreign package as they
may have been part of a USE clause for which the original symbol has
subsequently made internal in its home package by a previous UNEXPORT
operation.
Fixes #311.
UIOP, which used to be called ASDF/DRIVER, is now part of ASDF.
The version from Quicklisp seems to be that distributed as part of 2.32.5.