[Asdf-devel] mkcl and asdf upgrade

Robert Goldman rpgoldman at sift.net
Mon Jun 16 16:38:30 UTC 2014


I have replicated this bug by doing the following:

1. update my copy of mkcl from git
2. build and install new mkcl
3. update my copy of ASDF, checking out master
4. do make in the ASDF root directory
5. do make test-upgrade l=mkcl in the ASDF root directory

>From this I get the following error:

TEST ABORTED: The index 35 (max: 31) is not a valid slot index in the
object #<ASDF/SYSTEM:SYSTEM "asdf">.
0: (#<bytecompiled-function 00000000063ea980> (((NIL) (#:G-30736-4735 .
0)) (#:G-30736-4734) ((NIL) . #:G-30736-4733) (CONDITION . #<a
MKCL:INVALID-SLOT 135798880>) (COUNT . 69) (STREAM . #<output stream
"stdout">) (UIOP/IMAGE::KEYS :STREAM #<output stream "stdout"> :COUNT 69
:CONDITION #<a MKCL:INVALID-SLOT 135798880>) (#:|%the-lock--30736-4725|
. #<lock (recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-4726| . T)))
1: (#<bytecompiled-function UIOP/UTILITY:CALL-FUNCTION>
((UIOP/UTILITY::ARGUMENTS) (UIOP/UTILITY::FUNCTION-SPEC .
#<bytecompiled-closure 000000000a938ea0>) (#:|%the-lock--30736-2091| .
#<lock (recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-2092| . T)))
2: (#<bytecompiled-function UIOP/STREAM:CALL-WITH-SAFE-IO-SYNTAX>
((PACKAGE . :CL) (FUNCTION . #<bytecompiled-closure 000000000a938ea0>)
(#:|%the-lock--30736-3878| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-3879| . T)))
3: (#<bytecompiled-function UIOP/IMAGE:PRINT-BACKTRACE> ((CONDITION .
#<a MKCL:INVALID-SLOT 135798880>) (COUNT . 69) (STREAM . #<output stream
"stdout">) (UIOP/IMAGE::KEYS :STREAM #<output stream "stdout"> :COUNT 69
:CONDITION #<a MKCL:INVALID-SLOT 135798880>) (#:|%the-lock--30736-4725|
. #<lock (recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-4726| . T)))
4: (#<bytecompiled-function UIOP/IMAGE:PRINT-CONDITION-BACKTRACE>
((COUNT . 69) (STREAM . #<output stream "stdout">) (CONDITION . #<a
MKCL:INVALID-SLOT 135798880>) (#:|%the-lock--30736-4739| . #<lock
(recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-4740| . T)))
5: (#<bytecompiled-function ASDF-TEST:ACALL> ((ASDF-TEST::ARGS #<a
MKCL:INVALID-SLOT 135798880> :COUNT 69 :STREAM #<output stream
"stdout">) (ASDF-TEST::NAME . :PRINT-CONDITION-BACKTRACE)
(#:|%the-lock--30736-510| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-511| . T)))
6: (#<bytecompiled-function 0000000004d86e80> (((NIL) (#:G-30736-948 .
0)) (#:G-30736-947) ((NIL) . #:G-30736-946) (ASDF-TEST::C . #<a
MKCL:INVALID-SLOT 135798880>) (:ASDF-TEST-DONE . :ASDF-TEST-DONE)
(ASDF-TEST::THUNK . #<bytecompiled-closure 0000000004fb2960>)
(#:|%the-lock--30736-932| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-933| . T)))
7: (#<bytecompiled-function
ASDF/SYSTEM::CALL-WITH-UPDATED-SYSTEM-VARIABLES> ((ASDF/SYSTEM:SYSTEM .
#<ASDF/SYSTEM:SYSTEM "asdf">) (ASDF/SYSTEM::THUNK .
#<bytecompiled-closure 0000000008182180>) (ASDF/COMPONENT:COMPONENT .
#<ASDF/SYSTEM:SYSTEM "asdf">) (#:|%the-lock--30736-7534| . #<lock
(recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-7535| . T)))
8: (#<bytecompiled-function 000000000625fe00> ((ASDF/ACTION::THUNK .
#<bytecompiled-closure 00000000081821e0>) (ASDF/ACTION::C .
#<ASDF/LISP-ACTION:CL-SOURCE-FILE "asdf" "build" "asdf">)
(ASDF/ACTION::O . #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL>)
(CLOS::.THIS-GENERIC-FUNC. . #<STANDARD-GENERIC-FUNCTION
ASDF/ACTION:CALL-WITH-ACTION-CONTEXT 108475808>) (CLOS::.THIS-METHOD. .
#<STANDARD-METHOD CALL-WITH-ACTION-CONTEXT (#<The STANDARD-CLASS
ASDF/OPERATION:OPERATION 83822752> #<The STANDARD-CLASS
ASDF/COMPONENT:COMPONENT 80465472> #<The BUILT-IN-CLASS T 61887520>)
103107680>) (#:|%the-lock--30736-10209| . #<lock (recursive)
MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-10210| . T)))
9: (#<bytecompiled-function 000000000625f000> ((ASDF/COMPONENT:COMPONENT
. #<ASDF/LISP-ACTION:CL-SOURCE-FILE "asdf" "build" "asdf">)
(ASDF/OPERATION:OPERATION . #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL>)
(CLOS::.THIS-GENERIC-FUNC. . #<STANDARD-GENERIC-FUNCTION
ASDF/ACTION:PERFORM-WITH-RESTARTS 117185536>) (CLOS::.THIS-METHOD. .
#<STANDARD-METHOD PERFORM-WITH-RESTARTS (#<The BUILT-IN-CLASS T
61887520> #<The BUILT-IN-CLASS T 61887520>) 104710528>)
(#:|%the-lock--30736-10233| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-10234| . T)))
10: (#<bytecompiled-function 000000000600f000> (((NIL) (#:G-30736-10810
. 0)) (#:G-30736-10809) ((NIL) . #:G-30736-10808) ((NIL)
(#:G-30736-10807 . 0)) ((NIL)) (ASDF/LISP-ACTION::C .
#<ASDF/LISP-ACTION:CL-SOURCE-FILE "asdf" "build" "asdf">)
(ASDF/LISP-ACTION::O . #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL>)
(CLOS::.THIS-GENERIC-FUNC. . #<STANDARD-GENERIC-FUNCTION
ASDF/ACTION:PERFORM-WITH-RESTARTS 117185536>) (CLOS::.THIS-METHOD. .
#<STANDARD-METHOD PERFORM-WITH-RESTARTS (#<The STANDARD-CLASS
ASDF/LISP-ACTION:LOAD-OP 79667680> #<The STANDARD-CLASS
ASDF/LISP-ACTION:CL-SOURCE-FILE 78177024>) 101393344>)
(#:|%the-lock--30736-10793| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-10794| . T)))
11: (#<bytecompiled-function 0000000005d1e000> (((NIL) (#:G-30736-10291
. 1) (#:G-30736-10290 . 0)) (#:G-30736-10289) ((NIL) . #:G-30736-10288)
((NIL) (#:G-30736-10287 . 0)) ((NIL)) (ASDF/COMPONENT:COMPONENT .
#<ASDF/LISP-ACTION:CL-SOURCE-FILE "asdf" "build" "asdf">)
(ASDF/OPERATION:OPERATION . #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL>)
(CLOS::.THIS-GENERIC-FUNC. . #<STANDARD-GENERIC-FUNCTION
ASDF/ACTION:PERFORM-WITH-RESTARTS 117185536>) (CLOS::.THIS-METHOD. .
#<STANDARD-METHOD PERFORM-WITH-RESTARTS (#<The BUILT-IN-CLASS T
61887520> #<The BUILT-IN-CLASS T 61887520>) 99525376>)
(#:|%the-lock--30736-10272| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-10273| . T)))
12: (#<bytecompiled-function 0000000004ddfd80> ((ASDF-TEST::KEYS)
(#:|%the-lock--30736-1020| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-1021| . T)))
13: (#<bytecompiled-function ASDF-TEST::CALL-QUIETLY> ((ASDF-TEST::THUNK
. #<bytecompiled-closure 000000000556c3c0>) (#:|%the-lock--30736-962| .
#<lock (recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-963| . T)))
14: (#<bytecompiled-function ASDF-TEST:LOAD-ASDF-SYSTEM>
((ASDF-TEST::KEYS) (#:|%the-lock--30736-1020| . #<lock (recursive)
MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-1021| . T)))
15: (#<bytecompiled-function 0000000004f3c200> ((ASDF-TEST::TAG .
"REQUIRE") (ASDF-TEST::NEW-METHOD . ASDF-TEST:LOAD-ASDF-SYSTEM)
(ASDF-TEST::OLD-METHOD . ASDF-TEST:LOAD-ASDF-LISP)
(#:|%the-lock--30736-1320| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-1321| . T)))
16: (#<bytecompiled-function ASDF-TEST::CALL-WITH-TEST>
((:ASDF-TEST-DONE . :ASDF-TEST-DONE) (ASDF-TEST::THUNK .
#<bytecompiled-closure 0000000004fb2960>) (#:|%the-lock--30736-932| .
#<lock (recursive) MT:+LOAD-COMPILE-LOCK+ 000000000282f280>)
(#:|%lock-acquired--30736-933| . T)))
17: (#<bytecompiled-function ASDF-TEST::TEST-UPGRADE> ((ASDF-TEST::TAG .
"REQUIRE") (ASDF-TEST::NEW-METHOD . ASDF-TEST:LOAD-ASDF-SYSTEM)
(ASDF-TEST::OLD-METHOD . ASDF-TEST:LOAD-ASDF-LISP)
(#:|%the-lock--30736-1320| . #<lock (recursive) MT:+LOAD-COMPILE-LOCK+
000000000282f280>) (#:|%lock-acquired--30736-1321| . T)))
18: (#<bytecompiled-function SI:BYTECODE> NIL)
19: (#<bytecompiled-function SI:BYTECODE> ((SI::OUTPUT-FILE . T)
(SI::C-FILE) (SI::H-FILE) (SI::DATA-FILE) (SI::EXTERNAL-FORMAT .
:DEFAULT) (SI::VERBOSE . T) (SI::FASL-P . T) (MKCL:QUIT)))
20: (#<bytecompiled-function SI:BYTECODE> NIL)
21: (NIL NIL)
Above backtrace due to this condition:
The index 35 (max: 31) is not a valid slot index in the object
#<ASDF/SYSTEM:SYSTEM "asdf">.
Script failed
upgrade FAILED for mkcl from REQUIRE using method
'load-asdf-lisp'load-asdf-system
you can retry just that test with:
ASDF_UPGRADE_TEST_TAGS="REQUIRE"
ASDF_UPGRADE_TEST_METHODS="'load-asdf-lisp'load-asdf-system"
./test/run-tests.sh -u mkcl
or more interactively (and maybe with rlwrap or in emacs), start with:
mkcl -norc
then copy/paste:
(load "test/script-support.lisp") (asdf-test::da) (test-upgrade
'load-asdf-lisp'load-asdf-system "REQUIRE")

We should probably move this to a launchpad ticket....




More information about the asdf-devel mailing list