[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] regression - probably in let*
From: |
Mario Domenech Goulart |
Subject: |
Re: [Chicken-hackers] regression - probably in let* |
Date: |
Sun, 21 Jun 2015 15:48:59 +0000 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
On Mon, 15 Jun 2015 17:55:11 +0000 Mario Domenech Goulart <address@hidden>
wrote:
> On Mon, 15 Jun 2015 17:35:07 +0200 "Jörg F. Wittenberger" <address@hidden>
> wrote:
>
>> The attached test case works in csi but fails in csc.
>>
>> Possibly related to optimization options. Compile as:
>>
>> csc -O3 -clustering -no-argc-checks -no-procedure-checks
>> -no-bound-checks -no-trace -no-lambda-info -specialize -lfa2
>> -strict-types -disable-stack-overflow-checks -unsafe test-failing.scm
>>
>> to see it terminate with exit code 1.
>>
>> BTW: I'd have expected the assert (not (foo? "a b")) to kick in, but
>> this does not happen.
>>
>> Sorry, no clue, no patch.
>
> I can reproduce the problem you report. Looks like it is caused by
> -strict-types:
>
> $ ~/local/chicken-4.9.0.1/bin/csc -O3 -strict-types -unsafe test-failing.scm
> $ ./test-failing
> $ echo $?
> 0
>
> $ ~/local/chicken-master-clang/bin/csc -O3 -strict-types -unsafe
> test-failing.scm
> $ ./test-failing
> $ echo $?
> 1
git bissect suggests 332ba1db1155 as the first bad commit.
However, there's also ddb2b6350134. Since the test program mutates a
boolean variable, I suppose -strict-types would be a deal-breaker in
this case.
Best wishes.
Mario
--
http://parenteses.org/mario