chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] regression - probably in let*


From: Jörg F. Wittenberger
Subject: Re: [Chicken-hackers] regression - probably in let*
Date: Thu, 18 Jun 2015 11:37:04 +0200
User-agent: Mozilla/5.0 (X11; Linux armv7l; rv:31.0) Gecko/20100101 Icedove/31.7.0

Hi Mario,

thanks for your confirmation.  So it's -strict-types.  Maybe the test
should go into the test suite to prevent the issue sneaking into future
releases.

(As for -unsafe: that's actually reasonable behavior.  After all -unsafe
was requested.)

Best

/Jörg

Am 15.06.2015 um 19:55 schrieb Mario Domenech Goulart:
> Hi Jörg,
> 
> 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
> 
> And it seems that -unsafe is causing the assertion to "pass":
> 
> $ ~/local/chicken-master-clang/bin/csc -O3 -strict-types test-failing.scm
> $ ./test-failing
> 
> Error: (test-failing.scm:17) assertion failed: (not (foo? "a b"))
> 
>         Call history:
> 
>         test-failing.scm:16: foo?
>         test-failing.scm:7: loop
>         test-failing.scm:17: foo?
>         test-failing.scm:7: loop
>         test-failing.scm:7: loop
>         test-failing.scm:7: loop
>         test-failing.scm:17: ##sys#error                <--
> 
>                 
> Best wishes.
> Mario
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]