SCM
Interp::LazyApplyWrapper(void *data)
{
- return scm_internal_catch(SCM_BOOL_T,
- (scm_t_catch_body) Interp::ScmApplyWrapper,
- data,
- (scm_t_catch_handler) Interp::LazyHandler,
- 0);
+ return scm_c_with_throw_handler(SCM_BOOL_T,
+ (scm_t_catch_body) Interp::ScmApplyWrapper,
+ data,
+ (scm_t_catch_handler) Interp::LazyHandler,
+ 0,
+ 0);
}
static SCM
lazy_eval_file(char *filename)
{
- return scm_internal_catch(SCM_BOOL_T,
- (scm_t_catch_body) scm_c_primitive_load_path,
- filename,
- (scm_t_catch_handler) Interp::LazyHandler, 0);
+ return scm_c_with_throw_handler(SCM_BOOL_T,
+ (scm_t_catch_body) scm_c_primitive_load_path,
+ filename,
+ (scm_t_catch_handler) Interp::LazyHandler,
+ 0,
+ 0);
}
static SCM
lazy_eval_string(char *str)
{
- return scm_internal_catch(SCM_BOOL_T,
- (scm_t_catch_body) scm_c_eval_string, str,
- (scm_t_catch_handler) Interp::LazyHandler, 0);
+ return scm_c_with_throw_handler(SCM_BOOL_T,
+ (scm_t_catch_body) scm_c_eval_string,
+ str,
+ (scm_t_catch_handler) Interp::LazyHandler,
+ 0,
+ 0);
}
#endif
bot = b;
- scm_internal_catch(SCM_BOOL_T,
- (scm_t_catch_body) lazy_eval_string, (void *) static_cast<const char *> (command.c_str ()),
- (scm_t_catch_handler) Interp::EmptyHandler, 0);
+ scm_c_with_throw_handler(SCM_BOOL_T,
+ (scm_t_catch_body) lazy_eval_string,
+ (void *) static_cast<const char *> (command.c_str ()),
+ (scm_t_catch_handler) Interp::EmptyHandler,
+ 0,
+ 0);
#ifdef MULTITHREAD
// We release the lock
pthread_mutex_lock(&mutex);
#endif
bot = b;
- scm_internal_catch(SCM_BOOL_T,
- (scm_t_catch_body) lazy_eval_file,
- (void *)static_cast<const char * >(filename.c_str ()),
- (scm_t_catch_handler) Interp::EmptyHandler, 0);
+ scm_c_with_throw_handler(SCM_BOOL_T,
+ (scm_t_catch_body) lazy_eval_file,
+ (void *)static_cast<const char * >(filename.c_str ()),
+ (scm_t_catch_handler) Interp::EmptyHandler,
+ 0,
+ 0);
#ifdef MULTITHREAD
// We release the lock
pthread_mutex_unlock(&mutex);