Maybe this can help.
First define:
(defmethod print-object ((v jvm::var-ref) s) (prin1 (jvm::variable-name (jvm::var-ref-variable v)) s))
So that when tracing the expansion we don't throw a fit.
Then:
(defun expand-function-call-inline (form lambda-list body args) (handler-case (multiple-value-bind (bindings ignorables) (match-lambda-list (multiple-value-list (parse-lambda-list lambda-list)) args) (let ((expanded `(let* ,bindings (declare (ignorable ,@ignorables)) ,@body))) (let ((*print-structure* nil) (*print-pretty* t) (*print-case* :downcase)) (format t "transforming ~a ~% into~% ~a~%-------~%" form expanded) expanded))) (lambda-list-mismatch (x) (compiler-warn "Invalid function call: ~S (mismatch type: ~A)" form (lambda-list-mismatch-type x)) form)))
Given that, here's the trace of what happens when I compile the function in question:
java.lang.VerifyError: (class: abcl_6037b542_0820_4605_aeb0_a2000b3f3a45, method: execute signature: (Lorg/armedbear/lisp/LispObject;Lorg/armedbear/lisp/LispObject;)Lorg/armedbear/lisp/LispObject;) Illegal local variable number at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) at java.lang.Class.getConstructor0(Class.java:2699) at java.lang.Class.newInstance0(Class.java:326) at java.lang.Class.newInstance(Class.java:308) at org.armedbear.lisp.Lisp.makeCompiledFunctionFromClass(Lisp.java:1266) at org.armedbear.lisp.Lisp.loadClassBytes(Lisp.java:1327) at org.armedbear.lisp.Lisp.loadClassBytes(Lisp.java:1320) at org.armedbear.lisp.CompiledClosure$1.execute(CompiledClosure.java:236) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_453.execute(compiler-pass2.lisp:5224) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.compiler_pass2_454.execute(compiler-pass2.lisp:5261) at org.armedbear.lisp.Symbol.execute(Symbol.java:798) at org.armedbear.lisp.compiler_pass2_560.execute(compiler-pass2.lisp:8127) at org.armedbear.lisp.Symbol.execute(Symbol.java:798) at org.armedbear.lisp.LispThread.execute(LispThread.java:596) at org.armedbear.lisp.compiler_pass2_327.execute(compiler-pass2.lisp:2961) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_332.execute(compiler-pass2.lisp:3023) at org.armedbear.lisp.Symbol.execute(Symbol.java:798) at org.armedbear.lisp.compiler_pass2_560.execute(compiler-pass2.lisp:8127) at org.armedbear.lisp.Symbol.execute(Symbol.java:798) at org.armedbear.lisp.compiler_pass2_401.execute(compiler-pass2.lisp:4131) at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:112) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.compiler_pass2_567.execute(compiler-pass2.lisp:8350) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_569.execute(compiler-pass2.lisp:8581) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.compiler_pass2_571.execute(compiler-pass2.lisp:8623) at org.armedbear.lisp.Symbol.execute(Symbol.java:839) at org.armedbear.lisp.compiler_pass2_596.execute(compiler-pass2.lisp:8737) at org.armedbear.lisp.compiler_pass2_582.execute(compiler-pass2.lisp:8692) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$23.execute(Java.java:1007) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_578.execute(compiler-pass2.lisp:8692) at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:101) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_595.execute(compiler-pass2.lisp:8737) at org.armedbear.lisp.Symbol.execute(Symbol.java:810) at org.armedbear.lisp.compiler_pass2_601.execute(compiler-pass2.lisp:8754) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$23.execute(Java.java:1007) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.compiler_pass2_597.execute(compiler-pass2.lisp:8754) at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:112) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.compiler_pass2_602.execute(compiler-pass2.lisp:8825) at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:112) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:501) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:489) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169) at org.armedbear.lisp.SpecialOperators.access$000(SpecialOperators.java:40) at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101) at org.armedbear.lisp.Lisp.eval(Lisp.java:449) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.execute(Closure.java:421) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$
transforming ((lambda (g172 &rest g173) (invoke-restargs replaceAll lambdas::g172 #:temp13766 nil)) ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value) $1) into (let* ((g172 ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value)) (temp15717 (list $1)) (g173 temp15717)) (declare (ignorable)) (invoke-restargs replaceAll lambdas::g172 #:temp13766 nil)) ------- transforming ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value) into (let* ((g174 (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.)))) (temp15718 (list value)) (g175 temp15718)) (declare (ignorable)) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) ------- transforming ((lambda (g172 &rest g173) (invoke-restargs replaceAll lambdas::g172 #:temp13766 nil)) ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value) $1) into (let* ((g172 ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value)) (temp15725 (list $1)) (g173 temp15725)) (declare (ignorable)) (invoke-restargs replaceAll lambdas::g172 #:temp13766 nil)) ------- transforming ((lambda (g174 &rest g175) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.))) value) into (let* ((g174 (load-time-value ((lambda (g176 &rest g177) (invoke-restargs compile g176 g177 t)) 'java.util.regex.pattern \(.)))) (temp15726 (list value)) (g175 temp15726)) (declare (ignorable)) (invoke-restargs matcher lambdas::g174 #:temp13767 t)) ------- STYLE-WARNING: The variable LINE is defined but never used. STYLE-WARNING: The variable LAMBDAS::G172 is defined but never used. STYLE-WARNING: The variable LAMBDAS::G173 is defined but never used. STYLE-WARNING: The variable LAMBDAS::G174 is defined but never used. STYLE-WARNING: The variable LAMBDAS::G175 is defined but never used.
23.execute(Java.java:1007) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:494) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169) at org.armedbear.lisp.SpecialOperators.access$000(SpecialOperators.java:40) at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101) at org.armedbear.lisp.Lisp.eval(Lisp.java:449) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169) at org.armedbear.lisp.SpecialOperators.access$000(SpecialOperators.java:40) at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101) at org.armedbear.lisp.Lisp.eval(Lisp.java:449) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.execute(Closure.java:646) at org.armedbear.lisp.LispThread.execute(LispThread.java:711) at org.armedbear.lisp.Lisp.funcall(Lisp.java:183) at org.armedbear.lisp.Primitives$pf_apply.execute(Primitives.java:2829) at org.armedbear.lisp.Symbol.execute(Symbol.java:886) at org.armedbear.lisp.LispThread.execute(LispThread.java:711) at org.armedbear.lisp.swank_backend_45.execute(swank-backend.lisp:402) at org.armedbear.lisp.Symbol.execute(Symbol.java:886) at org.armedbear.lisp.LispThread.execute(LispThread.java:711) at org.armedbear.lisp.swank_541.execute(swank.lisp:2691) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.swank_529.execute(swank.lisp:2639) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.swank_524.execute(swank.lisp:2619) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_528.execute(swank.lisp:2639) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$23.execute(Java.java:1007) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_526.execute(swank.lisp:2639) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_540.execute(swank.lisp:2691) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Primitives$pf_funcall.execute(Primitives.java:2673) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:494) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.bindParametersAndExecute(Closure.java:446) at org.armedbear.lisp.Closure.execute(Closure.java:479) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.funcall(Lisp.java:163) at org.armedbear.lisp.Primitives$pf_apply.execute(Primitives.java:2811) at org.armedbear.lisp.Symbol.execute(Symbol.java:798) at org.armedbear.lisp.LispThread.execute(LispThread.java:596) at org.armedbear.lisp.swank_backend_41.execute(swank-backend.lisp:382) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_370.execute(swank.lisp:1774) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_539.execute(swank.lisp:2691) at org.armedbear.lisp.LispThread.execute(LispThread.java:632) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:522) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Primitives$pf__eval.execute(Primitives.java:328) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:494) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3720) at org.armedbear.lisp.Lisp.eval(Lisp.java:449) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.bindParametersAndExecute(Closure.java:446) at org.armedbear.lisp.Closure.execute(Closure.java:479) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_400.execute(swank.lisp:1979) at org.armedbear.lisp.LispThread.execute(LispThread.java:596) at org.armedbear.lisp.Primitives$pf_apply.execute(Primitives.java:2784) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_248.execute(swank.lisp:1023) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Primitives$pf_funcall.execute(Primitives.java:2673) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:494) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169) at org.armedbear.lisp.SpecialOperators.access$000(SpecialOperators.java:40) at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101) at org.armedbear.lisp.Lisp.eval(Lisp.java:449) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.bindParametersAndExecute(Closure.java:446) at org.armedbear.lisp.Closure.execute(Closure.java:493) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.Lisp.funcall(Lisp.java:165) at org.armedbear.lisp.Primitives$pf_apply.execute(Primitives.java:2829) at org.armedbear.lisp.Primitive.execute(Primitive.java:143) at org.armedbear.lisp.Symbol.execute(Symbol.java:810) at org.armedbear.lisp.LispThread.execute(LispThread.java:614) at org.armedbear.lisp.swank_backend_74.execute(swank-backend.lisp:663) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_148.execute(swank.lisp:423) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.swank_1.execute(swank.lisp:174) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_147.execute(swank.lisp:423) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$23.execute(Java.java:1007) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_145.execute(swank.lisp:423) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Java$23.execute(Java.java:1007) at org.armedbear.lisp.Symbol.execute(Symbol.java:775) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.swank_143.execute(swank.lisp:423) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_247.execute(swank.lisp:1023) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.swank_1.execute(swank.lisp:174) at org.armedbear.lisp.Symbol.execute(Symbol.java:786) at org.armedbear.lisp.LispThread.execute(LispThread.java:579) at org.armedbear.lisp.swank_246.execute(swank.lisp:1023) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Primitives$pf_funcall.execute(Primitives.java:2673) at org.armedbear.lisp.LispThread.execute(LispThread.java:562) at org.armedbear.lisp.Lisp.evalCall(Lisp.java:494) at org.armedbear.lisp.Lisp.eval(Lisp.java:459) at org.armedbear.lisp.Lisp.progn(Lisp.java:628) at org.armedbear.lisp.Closure.execute(Closure.java:421) at org.armedbear.lisp.LispThread.execute(LispThread.java:546) at org.armedbear.lisp.Lisp.funcall(Lisp.java:161) at org.armedbear.lisp.LispThread$2.run(LispThread.java:88) at java.lang.Thread.run(Thread.java:637)
; Compilation unit finished ; Caught 5 WARNING conditions ; Caught 5 STYLE-WARNING conditions
; No value CL-USER>