diff --git a/ffi-tools/ffi-tools.h b/ffi-tools/ffi-tools.h index bf1b21c..c4e5bfb 100644 --- a/ffi-tools/ffi-tools.h +++ b/ffi-tools/ffi-tools.h @@ -1,9 +1,6 @@ #include #include "scheme48.h" -/* kludges */ -#define FIXED_S48_RECORD_TYPE(x) (s48_stob_ref((x), S48_STOBTYPE_RECORD, 0)) - /* variables */ static s48_value scheme_list_length_function = S48_FALSE; static s48_value scheme_boolean_p_function = S48_FALSE; @@ -35,11 +32,11 @@ void ffit_init_hook(void); #define FFIT_RECORD_TYPE_INIT(C_RECTYPE, SCM_NAME) \ S48_GC_PROTECT_GLOBAL(C_RECTYPE); \ - C_RECTYPE = s48_get_imported_binding("SCM_NAME"); + C_RECTYPE = s48_get_imported_binding(SCM_NAME); #define FFIT_CHECK_RECORD_TYPE(SCM_VAL, SCM_RECTYPE) \ if (!(S48_RECORD_P(SCM_VAL) && \ - (FIXED_S48_RECORD_TYPE(SCM_VAL) == SCM_RECTYPE))) \ + (S48_RECORD_TYPE(SCM_VAL) == SCM_RECTYPE))) \ s48_raise_argument_type_error(SCM_VAL) #define FFIT_STRUCT_GET(FUNNAME, SCM_RECTYPE, C_RECTYPE, C_FIELD, FIELD_SCM_ENTER_FUN) \