~ chicken-core (chicken-5) d47df9bbc9a1efd94670ab810a03fc4c79d159c9
commit d47df9bbc9a1efd94670ab810a03fc4c79d159c9 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Mon Nov 22 04:22:22 2010 -0500 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Mon Nov 22 04:22:22 2010 -0500 added note about local mode (thanks to Joerg Wittenberger for making it clear that this needs to be documented in a better manner) diff --git a/manual/Declarations b/manual/Declarations index 8805f91f..99a1e225 100644 --- a/manual/Declarations +++ b/manual/Declarations @@ -175,7 +175,8 @@ Enables lambda-lifting (equivalent to the {{-lambda-lift}} option). Declares that the listed (or all) toplevel variables defined in the current compilation unit are not modified from code outside of this -compilation unit. +compilation unit. See also the documentation for the {{-local}} +compiler option about the implications of this. === no-argc-checks diff --git a/manual/Using the compiler b/manual/Using the compiler index 659e2b83..f2514a47 100644 --- a/manual/Using the compiler +++ b/manual/Using the compiler @@ -122,7 +122,7 @@ the source text should be read from standard input. ; -lambda-lift : Enable the optimization known as lambda-lifting. -; -local : Assume toplevel variables defined in the current compilation unit are not externally modified. This gives the compiler more opportunities for inlining. +; -local : Assume toplevel variables defined in the current compilation unit are not externally modified. This gives the compiler more opportunities for inlining. Note that this may result in counter-intuitive and non-standard behaviour: an asssignment to an exported toplevel variable executed in a different compilation unit or in evaluated code will possibly not be seen by code executing in the current compilation unit. ; -no-argc-checks : disable argument count checksTrap