This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: How do i debug --no-inline or --full-tailcalls options?
- From: Per Bothner <per at bothner dot com>
- To: OKUMURA Yuki <mjt at cltn dot org>, kawa at sourceware dot org
- Date: Thu, 11 Feb 2016 17:26:19 -0800
- Subject: Re: How do i debug --no-inline or --full-tailcalls options?
- Authentication-results: sourceware.org; auth=none
- References: <CAG1-Us1p_d+WdW6JRXyXYjafrmUBO1+1+2xAW4FSQjmepzMjGQ at mail dot gmail dot com>
On 02/11/2016 12:51 AM, OKUMURA Yuki wrote:
EXAMPLE1: --full-tailcalls
(https://github.com/okuoku/yuni/issues/33)
Following program requires --full-tailcalls to run with "java
kawa.repl -r7rs prog.sps".
Otherwise, Kawa gives java.lang.VerifyError.
(import (scheme base))
(define (ssplit-parse-byte0-ORIG byte)
(case byte
((NONE) (values 'NONE #f))
(else (values 'OTHERS #f))))
Why do we need --full-tailcalls here?
Removing CASE should compile fine so I guess there's something
different around (scheme base)
exported VALUES procedure here..
I've checked in a fix for this, but I'm not satisfied with it.
Or rather: The fix is fine, but there is some needless code
generated by the compiler. I know how to fix that - but then
that causes other problems I'm still working on.
--
--Per Bothner
per@bothner.com http://per.bothner.com/