armedbear / abcl

Armed Bear Common Lisp <git+https://github.com/armedbear/abcl/> <--> <svn+https://abcl.org/svn> Bridge
https://abcl.org#rdfs:seeAlso<https://gitlab.common-lisp.net/abcl/abcl>
Other
290 stars 29 forks source link

running cl-autowrap::cl-include of an ffmpeg file breaks compile #431

Open alanruttenberg opened 2 years ago

alanruttenberg commented 2 years ago

I probably can narrow this, but wanted to put it in because I can't do that now. To reproduce

ABCL errors out with the below (or similar) and quits. Can't imagine how that's possible...

    at org.armedbear.lisp.LispThread.popStackFrame(LispThread.java:827)
    at org.armedbear.lisp.LispThread.execute(LispThread.java:900)
    at org.armedbear.lisp.Lisp$1.execute(Lisp.java:286)
    at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
    at org.armedbear.lisp.LispThread.execute(LispThread.java:897)
    at org.armedbear.lisp.top_level_47.execute(top-level.lisp:407)
    at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:89)
    at org.armedbear.lisp.Symbol.execute(Symbol.java:793)
    at org.armedbear.lisp.LispThread.execute(LispThread.java:881)
    at org.armedbear.lisp.top_level_48.execute(top-level.lisp:415)
    at org.armedbear.lisp.LispThread.execute(LispThread.java:881)
    at org.armedbear.lisp.Interpreter.run(Interpreter.java:361)
    at org.armedbear.lisp.Main$1.run(Main.java:48)
    at java.base/java.lang.Thread.run(Thread.java:833)
java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 524284
    at org.armedbear.lisp.LispThread.popStackFrame(LispThread.java:827)
    at org.armedbear.lisp.LispThread.execute(LispThread.java:884)
    at org.armedbear.lisp.Interpreter.run(Interpreter.java:361)
    at org.armedbear.lisp.Main$1.run(Main.java:48)
    at java.base/java.lang.Thread.run(Thread.java:833)

This is running with java 11, invoking ABCL with java --add-opens java.base/java.util=ALL-UNNAMED -jar abcl-aio.jar

My .abclrc loads the usual asdf, abcl-contrib, jss

alanruttenberg commented 2 years ago

Install c2ffi - the instructions in this comment work on MacOS

Missed one thing: need to checkout branch llvm-11.0.0 of c2ffi

Uthar commented 2 years ago

I tested on x86_64-linux :

running these commands:

java --add-opens=java.base/java.util.jar=ALL-UNNAMED -cp "abcl.jar:abcl-contrib.jar:jna-5.9.0.jar" org.armedbear.lisp.Main
(require 'asdf)
(require 'cl-autowrap)
(autowrap::c-include "/.../ffmpeg/libavutil/color_utils.c")
(defun foo ())
(compile 'foo)

No error there