chicken-hackers
[Top][All Lists]
Advanced

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

[Chicken-hackers] Folding lolevel bindings


From: Evan Hanson
Subject: [Chicken-hackers] Folding lolevel bindings
Date: Mon, 22 Feb 2016 22:08:32 +1300

Hi all,

I've found a small issue with constant folding for procedures from the
lolevel unit, uncovered by the recent error handling changes in that
code (812b52e in master). Basically, the compiler doesn't use lolevel,
so the foldable bindings from that unit are never bound to procedures,
so they trigger the compilation error at support.scm:1508. You can see
this by compiling the program "(number-of-slots #(1 2 3))" with master.

I can think of two ways to fix this. One is to once again bail from just
`constant-form-eval` (rather than bombing out of compilation entirely)
when an identifier is found not to be bound to a procedure. The other is
to simply make the compiler use unit lolevel. I went through the various
lists of identifiers and lolevel seems to be the only unit with foldable
bindings that isn't loaded by the compiler.

Thoughts?

Evan



reply via email to

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