clisp instability with asdf-pathname-test

Bug #1502323 reported by Faré on 2015-10-02
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ASDF
Undecided
Faré

Bug Description

For me using the latest clisp on linux x64, all tests pass with 3.1.5.14. asdf-pathname-test.script fails with a segfault(!) at 3.1.5.15, due to commit 1b5bd7837874df7a89f697fa686eba6282e1f8e7 which changes comments and a default slot for class monolithic-lib-op, unused in that script. The segfault keeps happening until 3.1.5.17, and then pass again using 3.1.5.18, the only change being a tweak of docstrings(!). It keeps working until commit 540b7b9491280b3dae0c4b2b7160826edae559ca, but breaks again at commit d7a5bc7bdad09876efec3b678fa4e3bbc2dc995a which modifies unrelated function lisp-implementation-directory, now with an infinite loop or such while creating a system using logical-pathnames; but if I comment out the #+clisp line in that function, I'm back with the segfault, whereas if I put the entire expression in a #-clisp I get the test passing.

WTF, clisp? Using asdf commit a887b0c4c70c76efc750335d8178033aa5d58ac2, clisp changeset 15611:5c63938ef493.

The only way I see that mattering is via lisp-implementation-pathname-p, as called in parse-defsystem, at least for the latter failure. The segfault is clearly a CLISP bug.

I'll commit something that unbreaks it.

Faré (fahree) wrote :

I cannot reproduce on my current machine with the latest clisp.

I'm too lazy to learn enough hg to checkout clisp at that specific changeset.

Faré (fahree) wrote :

I tried to reproduce the bug and couldn't reproduce it using the latest CLISP by following the instructions above. However, when I thought everything was fine, I found what might be the same bug: deterministic SIGSEGV for me (this time in test-program.script), but extremely sensitive to source code modification -- adding a (+ 1 1) at the end of make-hello-world.lisp prevents the SIGSEGV, making it a heisenbug. GRRRRRRR!

I can reliably reproduce on my machine (Linux x64, Ubuntu 16.04.1 LTS) with a clisp compiled from 15631:bf16ec104ed4 with the myclisp script in fare-scripts (at 316f768), using the test suite of ASDF 3.1.7.8:
make t l=clisp t=test-program.script

Faré (fahree) wrote :

This is probably CLISP bug 678. Marking at Invalid (as an ASDF bug).
https://sourceforge.net/p/clisp/bugs/678/

Changed in asdf:
assignee: nobody → Faré (fahree)
status: New → Invalid
pipping (pipping) wrote :

I'm seeing something very similar now.

asdf-pathname-test.script is failing for me on 3.1.7.25, while it passed on 3.1.7.24. As far as I can tell, all of the changes between 3.1.7.24 and 3.1.7.25 were doc-related, though, no?

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers