diff options
author | Marius Vollmer <mvo@zagadka.de> | 2004-01-07 18:18:09 +0000 |
---|---|---|
committer | Marius Vollmer <mvo@zagadka.de> | 2004-01-07 18:18:09 +0000 |
commit | fc6bb2831dd5bcb002c5711bd74764c3f2f54f66 (patch) | |
tree | 4956eb982b68d1a7edca3751e64230c5d9ebfc9f | |
parent | 8843e1fa41dba5019336205e9570ebef49ab6317 (diff) | |
download | guile-fc6bb2831dd5bcb002c5711bd74764c3f2f54f66.tar.gz |
*** empty log message ***
-rw-r--r-- | NEWS | 26 | ||||
-rw-r--r-- | doc/ref/ChangeLog | 6 | ||||
-rw-r--r-- | libguile/ChangeLog | 27 | ||||
-rw-r--r-- | test-suite/ChangeLog | 7 |
4 files changed, 56 insertions, 10 deletions
@@ -581,28 +581,29 @@ starting the week. ** New way to deal with non-local exits and reentries. There is a new set of functions that essentially do what -scm_internal_dynamic_wind does, but in a more convenient way. Here is -a quick example of how to prevent a potential memory leak: +scm_internal_dynamic_wind does, but in a way that is more convenient +for C code in some situations. Here is a quick example of how to +prevent a potential memory leak: void foo () { char *mem; - scm_begin_frame (0); + scm_frame_begin (0); mem = scm_malloc (100); - scm_on_unwind (free, mem, SCM_F_WIND_EXPLICITELY); + scm_frame_unwind (free, mem, SCM_F_WIND_EXPLICITELY); - /* MEM would leak if BAR throws an error. SCM_ON_UNWIND frees it + /* MEM would leak if BAR throws an error. SCM_FRAME_UNWIND frees it nevertheless. */ bar (); - scm_end_frame (); + scm_frame_end (); /* Because of SCM_F_WIND_EXPLICITELY, MEM will be freed by - SCM_END_FRAME as well. + SCM_FRAME_END as well. */ } @@ -611,14 +612,19 @@ For full documentation, see the node "Frames" in the manual. ** New way to block and unblock asyncs In addition to scm_c_call_with_blocked_asyncs you can now also use -scm_with_blocked_asyncs in a 'frame' (see above). Likewise for -scm_c_call_with_unblocked_asyncs and scm_with_unblocked_asyncs. +scm_frame_block_asyncs in a 'frame' (see above). Likewise for +scm_c_call_with_unblocked_asyncs and scm_frame_unblock_asyncs. ** New way to temporarily set the current input, output or error ports -C code can now use scm_with_current_<foo>_port in a 'frame' (see +C code can now use scm_frame_current_<foo>_port in a 'frame' (see above). <foo> is one of "input", "output" or "error". +** New way to temporarily set fluids + +C code can now use scm_frame_fluid in a 'frame' (see +above) to temporarily set the value of a fluid. + ** New types scm_t_intmax and scm_t_uintmax. On platforms that have them, these types are identical to intmax_t and diff --git a/doc/ref/ChangeLog b/doc/ref/ChangeLog index ecebd2a76..f6f0ccce2 100644 --- a/doc/ref/ChangeLog +++ b/doc/ref/ChangeLog @@ -1,3 +1,9 @@ +2004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de> + + * scheme-control.texi, scheme-io.tex, scheme-scheduling.texi: + Adapt to new 'frame' names. Document scm_c_with_fluid, + scm_c_with_fluids, and scm_frame_fluid. + 2004-01-06 Marius Vollmer <marius.vollmer@uni-dortmund.de> * scheme-control.texi: Document scm_on_unwind_with_scm and diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 558f16ab5..5bfc42761 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,30 @@ +2004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de> + + * fluids.h, fluids.c (scm_frame_fluid): New. + + * dynwind.c (scm_frame_end): Do not use scm_i_dowinds. Instead, + do the unwinding directly. It is simple enough. + + * dynwind.h, dynwind.c: Did the following renamings: + scm_begin_frame -> scm_frame_begin, + scm_end_frame -> scm_frame_end, + scm_on_unwind -> scm_frame_unwind, + scm_on_rewind -> scm_frame_rewind, + scm_on_unwind_with_scm -> scm_frame_unwind_with_scm, + scm_on_rewind_with_scm -> scm_frame_rewind_with_scm. + Changed all uses. + + * aync.h, async.c: Did the follwing renamings: + scm_with_blocked_asyncs -> scm_frame_block_asyncs, + scm_with_unblocked_asyncs -> scm_frame_unblock_asyncs. + Changed all uses. + + * ports.h, ports.c: Did the follwing renamings: + scm_with_current_input_port -> scm_frame_current_input_port, + scm_with_current_output_port -> scm_frame_current_output_port, + scm_with_current_error_port -> scm_frame_current_error_port. + Changed all uses. + 2004-01-07 Kevin Ryde <user42@zip.com.au> * numbers.c (s_bignum): Remove, not used since gmp bignums. diff --git a/test-suite/ChangeLog b/test-suite/ChangeLog index 8ad4970a2..659ffe13d 100644 --- a/test-suite/ChangeLog +++ b/test-suite/ChangeLog @@ -1,3 +1,10 @@ +2004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de> + + * standalone/test-unwind.c: Adapted to 'frame' renamings. + (check_fluid): New. + + * Makefile.am (SCM_TESTS): Added continuations.test. + 2004-01-07 Kevin Ryde <user42@zip.com.au> * tests/numbers.test (<): Add tests inum/bignum/flonum/frac with frac. |