From b8ab41761971f85437e2a61baa1894a0ba944eee Mon Sep 17 00:00:00 2001 From: jjgarcia Date: Tue, 15 Mar 2005 14:26:32 +0000 Subject: [PATCH] Minor cast errors --- src/c/alloc_2.d | 5 ++++- src/c/eval.d | 9 ++++++--- src/c/interpreter.d | 2 +- src/c/unixfsys.d | 2 +- src/h/object.h | 1 + 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/c/alloc_2.d b/src/c/alloc_2.d index bf1101cd1..203d7ab16 100644 --- a/src/c/alloc_2.d +++ b/src/c/alloc_2.d @@ -39,8 +39,11 @@ struct typemanager tm_table[(int)t_end]; #endif static void -finalize(cl_object o, cl_object data) +finalize(GC_PTR _o, GC_PTR _data) { + cl_object o = (cl_object)_o; + cl_object data = (cl_object)_data; + CL_NEWENV_BEGIN { switch (type_of(o)) { #ifdef ENABLE_DLOPEN diff --git a/src/c/eval.d b/src/c/eval.d index 59e7a358b..59b2fcd16 100644 --- a/src/c/eval.d +++ b/src/c/eval.d @@ -79,7 +79,8 @@ cl_apply_from_stack(cl_index narg, cl_object x) if (fun->cfun.narg >= 0) { if (narg != (cl_index)fun->cfun.narg) FEwrong_num_arguments(fun); - return APPLY_fixed(narg, fun->cfun.entry, cl_env.stack_top - narg); + return APPLY_fixed(narg, (cl_objectfn_fixed)fun->cfun.entry, + cl_env.stack_top - narg); } return APPLY(narg, fun->cfun.entry, cl_env.stack_top - narg); case t_cclosure: @@ -126,7 +127,8 @@ link_call(cl_object sym, cl_objectfn *pLK, cl_object cblock, int narg, cl_va_lis if (fun->cfun.narg >= 0) { if (narg != fun->cfun.narg) FEwrong_num_arguments(fun); - out = APPLY_fixed(narg, fun->cfun.entry, cl_env.stack_top - narg); + out = APPLY_fixed(narg, (cl_objectfn_fixed)fun->cfun.entry, + cl_env.stack_top - narg); } else { if (pLK) { si_put_sysprop(sym, @'si::link-from', @@ -199,7 +201,8 @@ si_unlink_symbol(cl_object s) if (fun->cfun.narg >= 0) { if (narg != fun->cfun.narg) FEwrong_num_arguments(fun); - out = APPLY_fixed(narg, fun->cfun.entry, cl_env.stack_top - narg); + out = APPLY_fixed(narg, (cl_objectfn_fixed)fun->cfun.entry, + cl_env.stack_top - narg); } else { out = APPLY(narg, fun->cfun.entry, cl_env.stack + sp); } diff --git a/src/c/interpreter.d b/src/c/interpreter.d index 04e778c53..7c7d5e261 100644 --- a/src/c/interpreter.d +++ b/src/c/interpreter.d @@ -414,7 +414,7 @@ interpret_funcall(cl_narg narg, cl_object fun) { if (fun->cfun.narg >= 0) { if (narg != fun->cfun.narg) FEwrong_num_arguments(fun); - x = APPLY_fixed(narg, fun->cfun.entry, args); + x = APPLY_fixed(narg, (cl_objectfn_fixed)fun->cfun.entry, args); } else { x = APPLY(narg, fun->cfun.entry, args); } diff --git a/src/c/unixfsys.d b/src/c/unixfsys.d index ba4619eaf..fdcf35c17 100644 --- a/src/c/unixfsys.d +++ b/src/c/unixfsys.d @@ -252,7 +252,7 @@ backup_fopen(const char *filename, const char *option) #endif if (rename(filename, backupfilename)) FElibc_error("Cannot rename the file ~S to ~S.", 2, - make_simple_string(filename), make_simple_string(backupfilename)); + make_constant_string(filename), make_simple_string(backupfilename)); return fopen(filename, option); } diff --git a/src/h/object.h b/src/h/object.h index a126a1293..70e3bd9c0 100644 --- a/src/h/object.h +++ b/src/h/object.h @@ -39,6 +39,7 @@ typedef union cl_lispunion *cl_object; typedef cl_object cl_return; typedef cl_fixnum cl_narg; typedef cl_object (*cl_objectfn)(cl_narg narg, ...); +typedef cl_object (*cl_objectfn_fixed)(); /* OBJect NULL value.