diff options
author | Andy Wingo <wingo@pobox.com> | 2011-05-13 15:45:43 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-05-13 15:45:43 +0200 |
commit | 86fb1eb631d455aec634aa475a14d2c88052752c (patch) | |
tree | 98936072396a05aa1e4a6d177452f6d5e65a62f5 /libguile/deprecated.c | |
parent | fc7bd367ab4b5027a7f80686b1e229c62e43c90b (diff) | |
parent | 2002f1f84797c2c46d0634eabd5ac5fd61e13d73 (diff) | |
download | guile-86fb1eb631d455aec634aa475a14d2c88052752c.tar.gz |
merge strictness branch from 2.0
Diffstat (limited to 'libguile/deprecated.c')
-rw-r--r-- | libguile/deprecated.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libguile/deprecated.c b/libguile/deprecated.c index 0c5531630..3e2d88a7f 100644 --- a/libguile/deprecated.c +++ b/libguile/deprecated.c @@ -27,9 +27,35 @@ #define SCM_BUILDING_DEPRECATED_CODE #include "libguile/_scm.h" +#include "libguile/deprecation.h" #if (SCM_ENABLE_DEPRECATED == 1) + + +SCM +scm_internal_dynamic_wind (scm_t_guard before, + scm_t_inner inner, + scm_t_guard after, + void *inner_data, + void *guard_data) +{ + SCM ans; + + scm_c_issue_deprecation_warning + ("`scm_internal_dynamic_wind' is deprecated. " + "Use the `scm_dynwind_begin' / `scm_dynwind_end' API instead."); + + scm_dynwind_begin (SCM_F_DYNWIND_REWINDABLE); + scm_dynwind_rewind_handler (before, guard_data, SCM_F_WIND_EXPLICITLY); + scm_dynwind_unwind_handler (after, guard_data, SCM_F_WIND_EXPLICITLY); + ans = inner (inner_data); + scm_dynwind_end (); + return ans; +} + + + void scm_i_init_deprecated () { |