On Wed, 2014-03-19 at 17:22 -0500, Robert Goldman wrote: > Robert Brown wrote: > > Does ASDF set compiler optimization settings before compiling > > each file when building? I'm concerned that changing the > > optimization setting inside one source file could cause the > > change to stick and be used for other files. I don't think the > > CL standard mandates that "(declaim (optimize ... ))" applies > > only to the current file. > > > > The issue is similar to that of readtables ... > > To the best of my knowledge (i.e., I'm not looking it up again right now!) > you are right that the standard does not mandate file-scope for DECLAIM, and > I have a *vague* memory that some implementation does allow it to leak. > > I am reluctant to add this to the set of things that ASDF (mis)manages for > the programmer. E.g, I think SBCL has a "policy" setting that is intended to > provide a default setting for the optimization parameters. > > However, you COULD do this yourself, I believe, by writing an :AROUND method > for PERFORM COMPILE-OP on your own system. I'm actually not sure what the > right mechanism is. Would it be: > > (defmethod perform :around ((op compile-op) (c my-optimized-files)) > (locally (declare (optimize (speed 3) (good-looking 11))) > (call-next-method)))
LOCALLY has lexical scope. -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur.
signature.asc
Description: This is a digitally signed message part