ecl: test-bundle fails when run twice

Bug #1626994 reported by pipping on 2016-09-23
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ASDF
Medium
Faré

Bug Description

On the second run, I get

Create a DLL via monolithic-dll-op
Use and test that DLL
TEST ABORTED: LOAD-FOREIGN-MODULE: Could not load foreign module #P"/home/pipping/tmp/asdf/build/fasls/ecl-16.1.2-ca7f5107-linux-x64/asdf/test/test-asdf/monodll--all-systems.so" (Error: "/home/pipping/tmp/asdf/build/fasls/ecl-16.1.2-ca7f5107-linux-x64/asdf/test/test-asdf/monodll--all-systems.so: undefined symbol: always_7")

I first mentioned this here:

  https://gitlab.common-lisp.net/asdf/asdf/merge_requests/26#note_1215

after Daniel Kochmański mentioned it to me.

Faré (fahree) wrote :

The fact that it works on mkcl (does it not?) Makes me suspect a bug in ECL.

If you (or someone) is interested in debugging, I suggest starting by taking snapshots of the files at stake after the first pass, and comparing to the files after the second pass: which are wrong? Also, tracing ecl's run-program or hwhichever way it invokes compilers and linkers. And if there's nothing wrong, instrumenting ECL to not delete the C and header files it creates, to see if they are correct the second time around.

Faré (fahree) wrote :

It was a subtle bug in ASDF indeed, due to an interaction between *load-system-operation* being load-bundle-op rather than load-op on ECL, and the use of required-components. The very subtle solution is now documented in suitable comments.

Fix included in CR !43:
https://gitlab.common-lisp.net/asdf/asdf/merge_requests/43

Changed in asdf:
assignee: nobody → Faré (fahree)
importance: Undecided → Medium
milestone: none → asdf3.2
status: New → In Progress
Faré (fahree) on 2016-12-01
Changed in asdf:
status: In Progress → Fix Committed
pipping (pipping) on 2017-01-13
Changed in asdf:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers