From 68665a970864f16cb9e1a19411ab11dbf2ae138c Mon Sep 17 00:00:00 2001 From: Mikael Djurfeldt Date: Fri, 12 Oct 2001 08:55:05 +0000 Subject: [PATCH] * validate.h (SCM_VALIDATE_DOUBLE_DEF_COPY): New macro. --- libguile/ChangeLog | 6 ++++++ libguile/validate.h | 13 +++++++++++++ 2 files changed, 19 insertions(+) diff --git a/libguile/ChangeLog b/libguile/ChangeLog index ca9ed8bc6..ded18c105 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,9 @@ +2001-10-12 Mikael Djurfeldt + + * debug.c (scm_mem_to_proc): Fixed typo in previous change. + + * validate.h (SCM_VALIDATE_DOUBLE_DEF_COPY): New macro. + 2001-10-12 Dirk Herrmann * print.c (scm_print_state_vtable, print_state_pool): diff --git a/libguile/validate.h b/libguile/validate.h index f7b7aec53..21aadbe57 100644 --- a/libguile/validate.h +++ b/libguile/validate.h @@ -293,6 +293,19 @@ } \ } while (0) +#define SCM_VALIDATE_DOUBLE_DEF_COPY(pos, k, default, cvar) \ + do { \ + if (SCM_UNBNDP (k)) \ + { \ + k = scm_make_real (default); \ + cvar = default; \ + } \ + else \ + { \ + cvar = SCM_NUM2DOUBLE (pos, k); \ + } \ + } while (0) + /* [low,high) */ #define SCM_VALIDATE_INUM_RANGE(pos,k,low,high) \ do { SCM_ASSERT(SCM_INUMP(k), k, pos, FUNC_NAME); \