[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] Optimizer bug
From: |
Felix |
Subject: |
Re: [Chicken-users] Optimizer bug |
Date: |
Sat, 04 Sep 2010 12:19:48 +0200 (CEST) |
From: Sven Hartrumpf <address@hidden>
Subject: [Chicken-users] Optimizer bug
Date: Sat, 04 Sep 2010 11:52:36 +0200 (CEST)
> Hi all.
>
> Some months ago -optimize-level 2 stopped working for me.
> As -optimize-level 1 still works, inlining must be the culprit (?):
>
>
> /usr/local/bin/chicken nallch.scm -output-file nallch.c -debug-level 0
> -optimize-level 2
>
> Warning: redefinition of standard binding: symbol->string
>
> Warning: redefinition of extended binding: any?
>
> Warning: redefinition of extended binding: identity
Are these redefinitions genuine or are the warnings bogus?
>
> Error: (=) bad argument type - not a number: #f
>
> Call history:
>
> <syntax> (string-append (quote "/") (quote #f))
> <syntax> (quote "/")
> <syntax> (##core#quote "/")
> <syntax> (quote #f)
> <syntax> (##core#quote #f)
> <eval> (string-append (quote "/") (quote #f))
> <syntax> (string->number (quote #f))
> <syntax> (quote #f)
> <syntax> (##core#quote #f)
> <eval> (string->number (quote #f)) <--
This is during constant folding. Can you figure out the locations where
such an expression will occur? Passing "-debug o" will given information
about the optimizations done (long).
Alternatively you might pass "-debug 5 >data", but this will produce very
large and awkward output as it dumps the intermediate structure after
every optimization pass.
cheers,
felix