diff options
author | Brian Templeton <bpt@hcoop.net> | 2010-08-16 03:20:55 -0400 |
---|---|---|
committer | Brian Templeton <bpt@hcoop.net> | 2010-08-16 03:20:55 -0400 |
commit | c2eb58825c1176ee9dcf200943eb8cb413115c44 (patch) | |
tree | 6d054df6890eda95c1ab7534d37b4c1a20db3900 /test-suite/tests/elisp-compiler.test | |
parent | 761e60535bc6ae4fdce70499b415bfc5bd1d1f91 (diff) | |
download | guile-wip-bpt-elisp.tar.gz |
lexical function binding for elispwip-bpt-elisp
* module/language/elisp/compile-tree-il.scm (access-variable)
(reference-variable, set-variable!): Handle globally-bound non-special
variables.
(bind-lexically?): Create lexical bindings for flet and flet*.
* module/language/elisp/runtime.scm (reference-variable, set-variable!):
Handle globally-bound non-special variables.
(built-in-func): Set the variable directly instead of storing the
function in a fluid.
* module/language/elisp/runtime/subrs.scm (funcall): Call apply
directly.
* test-suite/tests/elisp-compiler.test ("Function Definitions")["flet
and flet*"]:
Diffstat (limited to 'test-suite/tests/elisp-compiler.test')
-rw-r--r-- | test-suite/tests/elisp-compiler.test | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/test-suite/tests/elisp-compiler.test b/test-suite/tests/elisp-compiler.test index 0d3a8b4b4..230dc772d 100644 --- a/test-suite/tests/elisp-compiler.test +++ b/test-suite/tests/elisp-compiler.test @@ -460,13 +460,13 @@ (flet ((foobar (lambda () 0)) (myfoo (symbol-function 'foobar))) (and (= (myfoo) 42) - (= (test) 0))) + (= (test) 42))) (flet* ((foobar (lambda () 0)) (myfoo (symbol-function 'foobar))) - (= (myfoo) 0)) + (= (myfoo) 42)) (flet (foobar) (defun foobar () 0) - (= (test) 0)) + (= (test) 42)) (= (test) 42))))) (with-test-prefix/compile "Calling Functions" |