gpgscm: Add 'finally', rework all macros.
authorJustus Winter <justus@g10code.com>
Thu, 22 Dec 2016 13:42:50 +0000 (14:42 +0100)
committerJustus Winter <justus@g10code.com>
Mon, 2 Jan 2017 10:02:34 +0000 (11:02 +0100)
commitb79274a3b7e58f88e9a8c1dc1fb24dd3e983543c
treec2a73dd4a9288f804d50794e6fd9439514d53d0f
parente8b843508dac96e9d0a3140954dd5a3618669cec
gpgscm: Add 'finally', rework all macros.

* tests/gpgscm/init.scm (finally): New macro.
* tests/gpgscm/tests.scm (letfd): Rewrite.
(with-working-directory): Likewise.
(with-temporary-working-directory): Likewise.
(lettmp): Likewise.
--

Rewrite all our macros using 'define-macro'. Use the new control flow
mechanism 'finally', or 'dynamic-wind' where appropriate.  Make sure
the macros are hygienic.  Reduce code duplication.

Signed-off-by: Justus Winter <justus@g10code.com>
tests/gpgscm/init.scm
tests/gpgscm/tests.scm