diff options
author | Ludovic Courtes <ludovic.courtes@laas.fr> | 2005-11-01 21:29:04 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2008-04-25 19:09:30 +0200 |
commit | b6368dbbb9af59e6c2df6b8cccc2651a2da8b725 (patch) | |
tree | 6b9a374a3a920d6cbe7ddfe863f00a74258a6120 /testsuite/t-closure.scm | |
parent | 49edef60dc34fcdb40ba1df3b5136e88796870c0 (diff) | |
download | guile-b6368dbbb9af59e6c2df6b8cccc2651a2da8b725.tar.gz |
Fixed a Scheme translation bug; cleaned compilation with GCC 4.
* module/language/scheme/translate.scm (trans-pair): In the `set!' case,
when a procedure-with-setter is passed, call `trans:pair' with an
actual pair. This fixes a long-lasting bug which prevented compilation
of `set!' statements with procedures-with-setter (this showed up when
compiling `(system vm assemble)').
* module/system/base/compile.scm: Added `objcode->u8vector' to the
`#:select' clause.
* module/system/base/syntax.scm: Cosmetic changes.
* module/system/vm/assemble.scm (preprocess): Removed debugging
statements.
* src/frames.c: Cosmetic changes.
* src/frames.h (SCM_FRAME_SET_DYNAMIC_LINK): New.
* src/objcodes.c: Use `scm_t_uint8' instead of `char' when relevant.
* src/vm.c (vm_heapify_frames_1): Use `SCM_FRAME_SET_DYNAMIC_LINK ()'.
* src/vm_loader.c: Added casts to mute GCC 4 warnings.
* testsuite/run-vm-tests.scm (*scheme*): Renamed to `%scheme'.
(run-test-from-file): Renamed to `compile/run-test-from-file'.
(run-vm-tests): Run each test using both the VM and the interpreter;
compare the results.
* testsuite/t-proc-with-setter.scm: Try out `get/set'.
* doc/Makefile.am (info_TEXINFOS): New.
* doc/guile-vm.texi: Added index entries and indices.
* doc/texinfo.tex: New file.
git-archimport-id: lcourtes@laas.fr--2005-mobile/guile-vm--mobile--0.6--patch-5
Diffstat (limited to 'testsuite/t-closure.scm')
-rw-r--r-- | testsuite/t-closure.scm | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/testsuite/t-closure.scm b/testsuite/t-closure.scm index 65d14dd4b..3d791979e 100644 --- a/testsuite/t-closure.scm +++ b/testsuite/t-closure.scm @@ -1,5 +1,8 @@ -(let ((x 2)) - (lambda () - (let ((x++ (+ 1 x))) - (set! x x++) - x++))) +(define func + (let ((x 2)) + (lambda () + (let ((x++ (+ 1 x))) + (set! x x++) + x++)))) + +(list (func) (func) (func)) |