deprecate lazy-catch
authorAndy Wingo <wingo@pobox.com>
Sun, 31 Jan 2010 11:35:19 +0000 (12:35 +0100)
committerAndy Wingo <wingo@pobox.com>
Fri, 26 Feb 2010 10:56:02 +0000 (11:56 +0100)
commite10cf6b9c7e54c79db4de74584f1b0b65847d4fc
tree3df9ed5f6b52af3b0ffd5605e2f8834705bb589c
parentd296431516dbf14535fc6eaba551fede19c09772
deprecate lazy-catch

* libguile/deprecated.h:
* libguile/deprecated.c (scm_internal_lazy_catch, scm_lazy_catch):
  Deprecate, and print out a nasty warning that people should change to
  with-throw-handler.

* libguile/throw.h:
* libguile/throw.c (scm_c_with_throw_handler): Deprecate the use of the
  lazy_catch_p argument, printing out a nasty warning if someone
  actually passes 1 as that argument. The combination of the pre-unwind
  and post-unwind handlers should be sufficient.

* test-suite/tests/exceptions.test: Remove lazy-catch tests, as they are
  deprecated. Two of them fail:
  * throw/catch: effect of lazy-catch unwinding on throw to another key
  * throw/catch: repeat of previous test but with lazy-catch
  Hopefully people are not depending on this behavior, and the warning is
  sufficiently nasty for people to switch. We will see.

* test-suite/tests/eval.test ("promises"): Use with-throw-handler
  instead of lazy-catch.

* doc/ref/api-debug.texi:
* doc/ref/api-control.texi: Update to remove references to lazy-catch,
  folding in the useful bits to with-throw-handler.
doc/ref/api-control.texi
doc/ref/api-debug.texi
libguile/deprecated.c
libguile/deprecated.h
libguile/throw.c
libguile/throw.h
test-suite/tests/eval.test
test-suite/tests/exceptions.test