melisgl / named-readtables

The official repo of named-readtables.
Other
66 stars 15 forks source link

Can't load with SBCL 2.0.6 #19

Closed Ambrevar closed 4 years ago

Ambrevar commented 4 years ago
$ /gnu/store/08mkgwcib4rnlaxnq7dw9q9hzchz65lf-sbcl-2.0.6/bin/sbcl
This is SBCL 2.0.6, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* (asdf:load-system :named-readtables)

debugger invoked on a TYPE-ERROR in thread
#<THREAD "main thread" RUNNING {10009F0083}>:
  The value
    0
  is not of type
    LIST

Suprisingly, compile-bundle-up works.

Ambrevar commented 4 years ago

Not sure why, but there is no stacktrace for this error.

melisgl commented 4 years ago

I cannot reproduce the issue with sbcl 2.0.6 locally. I see there is a backtrace in https://github.com/edicl/cl-interpol/issues/10. What's weird about that backtrace are the undefined function errors: 0: (SB-IMPL:DISPATCH-TABLES #<error printing a READTABLE: #<UNDEFINED-FUNCTION READTABLE-NAME {10022CE0D3}>> T)

Can you try blowing away the fasl files and recompiling?

Ambrevar commented 4 years ago

It's built in Guix, it always builds in a fresh container.

Hmmm... Could SBCL 2.0.6 build wrongly on Guix? Any clue how I could inspect further?

melisgl commented 4 years ago

I'm not familiar with guix. Would it make sense to compile an sbcl from git and try with that?

Maybe list the locals in the sbcl debugger (command L). Also, run (asdf:test-system :named-readtables).

Ambrevar commented 4 years ago
#<THREAD "main thread" RUNNING {10009F0083}>:
  The value
    0
  is not of type
    LIST

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [TRY-RECOMPILING              ] Recompile named-readtables and try loading it again
  1: [RETRY                        ] Retry loading FASL for
   #<NAMED-READTABLES-SOURCE-FILE "named-readtables" "named-readtables">.
  2: [ACCEPT                       ] Continue, treating loading FASL for
   #<NAMED-READTABLES-SOURCE-FILE "named-readtables" "named-readtables">
                                     as having been successful.
  3:                                 Retry ASDF operation.
  4: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                     configuration.
  5:                                 Retry ASDF operation.
  6:                                 Retry ASDF operation after resetting the
                                     configuration.
  7: [ABORT                        ] Exit debugger, returning to top level.

debugger invoked on a UNDEFINED-FUNCTION in thread #<THREAD "main thread" RUNNING {10009F0083}>: The function EDITOR-HINTS.NAMED-READTABLES:READTABLE-NAME is undefined.

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [CONTINUE                     ] Retry calling READTABLE-NAME.
  1: [USE-VALUE                    ] Call specified function.
  2: [RETURN-VALUE                 ] Return specified values.
  3: [RETURN-NOTHING               ] Return zero values.
  4: [TRY-RECOMPILING              ] Recompile named-readtables and try loading it again
  5: [RETRY                        ] Retry loading FASL for #<NAMED-READTABLES-SOURCE-FILE "named-readtables" "named-readtables">.
  6: [ACCEPT                       ] Continue, treating loading FASL for #<NAMED-READTABLES-SOURCE-FILE "named-readtables" "named-readtables"> as having been successful.
  7:                                 Retry ASDF operation.
  8: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
  9:                                 Retry ASDF operation.
 10:                                 Retry ASDF operation after resetting the configuration.
 11: [ABORT                        ] Exit debugger, returning to top level.

("undefined function" #<error printing READTABLE {100203A773}>)
0[2] L
There is no variable information available.

test-system yields the same error (which is expected since the test system tries to load the main system).

With which Common Lisp compiler do you bootstrap SBCL? I do with CLisp. I can try with ECL or SBCL 2.0.5.

Ambrevar commented 4 years ago

It seems to be an issue with SBCL 2.0.6: if bootstrapped from SBCL 2.0.5 it works, otherwise it fails.

I've reported upstream: https://bugs.launchpad.net/sbcl/+bug/1886255

stassats commented 4 years ago

Should be closed as per sbcl/sbcl@63d0598

Ambrevar commented 4 years ago

Thanks!