I'll count that as probably a bug on my side, due to inheritance via
selfward-operation adding unexpected results into the list being
deconstructed.
My apologies for doubting ECL, and thank you for your patience and support.
There remains the other problem, regarding linking.
—♯ƒ • François-René
Faré writes:
>
> OK, so the failures are all explained now.
I'm glad to hear that.
> However, though the program compiles as expected, trying to link lots
> of .o files instead of a handful of .a files leads to another bug:
> (ASDF/ACTION:COMPONENT-DEPENDS-ON :STATIC-PROGRAM-OP :HELLO/CHELLO)
When I modify my script, I see
(SLOT-VALUE (MAKE-INSTANCE 'CFFI-TOOLCHAIN::FOO-OP)
'ASDF/BUNDLE::GATHER-TYPE) => :STATIC-LIBRARY
Which looks weird to me: shouldn't the initialize-instance :before
method have triggered an error because I did a make-instance outside
of make-operation? That sounds
(slot-value (make-instance 'foo-op) 'gather-type) ;-> :object
Works OK for me. I think that the problem is somewhere with your
make-operation and gather-type functions indirection magic (I'm not
saying its not triggered by some bug in ECL, but it's doesn't look like
a problem with allocation).
F