serapeum library regression: `The value of C::FORM is NIL, which is not of type C::C1FORM`
I apologize in advance for the lack of a small reproducible bit of lisp code ; I'm not the library author, merely a downstream package repository maintainer.
I have found a regression in package serapeum in ECL revision cebb13f9:
compiling the library now yields this error:
;;; Compiling /private/tmp/nix-build-system-serapeum.drv-0/source/queue.lisp.
;;; OPTIMIZE levels: Safety=2, Space=0, Speed=3, Debug=0
;;;
;;; Internal error:
;;; ** The value of C::FORM is NIL, which is not of type C::C1FORM.An error occurred during initialization:
COMPILE-FILE-ERROR while compiling #<cl-source-file "serapeum" "level0" "queue">.
This seems relevant to the change, which introduces (check-type form c1form)--judging by its name I guess it's related.
The offending file is https://github.com/ruricolist/serapeum/blob/af8e411f2cd33a59336803ff520a59e486ea883e/queue.lisp though I don't know exactly which form in that file is causing the bug. And of course I don't know if it's a serapeum bug or an ECL bug.
If you have some flags / vars I can pass to ECL on build which help with debugging I'm happy to do so and report back with more details.
N.B.: ECL just before cebb13f9 also didn't compile serapeum correctly, but the error was further down. This queue.lisp file only broke on this revision specifically.