}
-/* only for sfun not gfun !! Does not check number of args */
-static void
-call_sfun_no_check(object fun)
-{ DEBUG_AVMA
- int n;
- object *base=vs_base;
- n=vs_top - base;
- base[0]=c_apply_n_fun(fun,n,base);
- vs_top=(vs_base=base)+1;
- CHECK_AVMA;
- return;
-}
+/* /\* only for sfun not gfun !! Does not check number of args *\/ */
+/* static void */
+/* call_sfun_no_check(object fun) */
+/* { DEBUG_AVMA */
+/* int n; */
+/* object *base=vs_base; */
+/* n=vs_top - base; */
+/* base[0]=c_apply_n_fun(fun,n,base); */
+/* vs_top=(vs_base=base)+1; */
+/* CHECK_AVMA; */
+/* return; */
+/* } */
static void
call_vfun(object fun)
{ DEBUG_AVMA
switch(type_of(fun)) {
case t_cfun:
- (*fun->cf.cf_self)();
- return;
+ (*fun->cf.cf_self)(); return;
+ case t_cclosure:
+ (*fun->cc.cc_self)(fun); return;
case t_sfun:
- call_sfun_no_check(fun); return;
+ /* call_sfun_no_check(fun); return; */
case t_gfun:
quick_call_sfun(fun); return;
case t_vfun:
super_funcall_no_event(fun->s.s_gfdef);
return;
default:
- funcall_no_event(fun);
+ funcall(fun);
}
}
goto L;
}
vs_base[0]=list(4,siScomma,sLapply,list(2,sLquote,sLvector),vs_base[2]);
+ vs_top=vs_base+1;
return;
}
vsp = vs_top;
do_gcl_abort();
}
memprotect_handler_invocations=1;
- if (faddr!=memprotect_test_address)
+ if (page(faddr)!=page(memprotect_test_address))
memprotect_result=memprotect_bad_fault_address;
else
memprotect_result=memprotect_none;