[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] a cas of chicken overoptimizing
From: |
Felix |
Subject: |
Re: [Chicken-hackers] a cas of chicken overoptimizing |
Date: |
Tue, 14 Feb 2012 11:07:51 +0100 (CET) |
>
> (define (write-blob-to-sql sql identifier last blob c-c)
> (define ins '())
> (define del '())
> (if (vector? blob)
> (begin
> (set! ins (vector-ref blob 1))
> (set! del (vector-ref blob 2))
> (set! blob (vector-ref blob 0))))
> (if (or (pair? ins) (pair? del))
> (<handle-ins-and-del>))
> (<do-some-more>))
>
> "<handle-ins-and-del>" used to be reliably executed for at least a
> year.
This is caused by a flow-analysis bug. Compiling with "-verbose" gives
warnings about these two type-checks, so you should enable this option
if you assume something's not right.
As a quick fix, changing line 645 in scrutinizer.scm to "(if #f ...)"
should get your code running. I will try to provide a proper patch
in the meantime.
Thanks for reporting this.
cheers,
felix