On 15 March 2013 19:45, Richard Fateman <fateman@...> wrote:
> so at least in principle, thanks for the patch. Since my objective is not
> to get
> SBCL recompiled and doing the right thing "on my computer only", it seems
> pointless for me to install the patch here. I want to be able to send out a
> package to any SBCL installation to use this code. So I'll have to go with
> the second suggestion. For what it is worth, the "body" is not likely to be
> So I'll go with the
> (declare (optimize (sb-c::constant-folding 0)))
Sorry! I was unclear, it seems. That patch adds support for the
SB-C::CONSTANT-FOLDING declaration -- defaulting it to SPEED.
If you're happy to require a bleeding edge SBCL, I think adding that
declaration (with default value of 1 instead of SPEED) to mainline
SBCL is possible -- though it must be understood to be an unsupported
extension, a stopgap measure.
If you need your code work on older SBCLs as well, I don't see any way
around walking the body and declaring all called functions NOTINLINE.