diff --git a/src/c/all_symbols.d b/src/c/all_symbols.d index 5e18e7857..6863b9b9e 100644 --- a/src/c/all_symbols.d +++ b/src/c/all_symbols.d @@ -108,7 +108,7 @@ mangle_name(cl_object output, unsigned char *source, int l) output = cl_format(4, ECL_NIL, ecl_make_constant_base_string("ECL_SYM(~S,~D)",-1), name, ecl_make_fixnum(p)); - @(return found output maxarg); + @(return found output); } } else if (!Null(symbol)) { cl_object fun = symbol->symbol.gfdef; @@ -120,8 +120,12 @@ mangle_name(cl_object output, unsigned char *source, int l) symbol = s; found = ECL_T; if (fun->cfun.narg >= 0) { - minarg = - maxarg = ecl_make_fixnum(fun->cfun.narg); + if (t == t_cfunfixed) { + minarg = + maxarg = ecl_make_fixnum(fun->cfunfixed.narg); + } else { + minarg = ecl_make_fixnum(fun->cfun.narg); + } } break; } @@ -165,12 +169,12 @@ mangle_name(cl_object output, unsigned char *source, int l) output->base_string.fillp = 0; if (!Null(package)) { if (!mangle_name(output, package->base_string.self, package->base_string.fillp)) { - @(return ECL_NIL ECL_NIL maxarg); + @(return ECL_NIL ECL_NIL minarg maxarg); } } output->base_string.self[output->base_string.fillp++] = c; if (!(dest = mangle_name(output, source, l))) { - @(return ECL_NIL ECL_NIL maxarg); + @(return ECL_NIL ECL_NIL minarg maxarg); } if (dest[-1] == '_') dest[-1] = 'M'; @@ -243,7 +247,7 @@ make_this_symbol(int i, cl_object s, int code, const char *name, if (narg >= 0) { f = ecl_make_cfun((cl_objectfn_fixed)fun, s, NULL, narg); } else { - f = ecl_make_cfun_va(fun, s, NULL); + f = ecl_make_cfun_va(fun, s, NULL, -narg - 1); } ECL_SYM_FUN(s) = f; } diff --git a/src/c/assignment.d b/src/c/assignment.d index 52f5ef4e4..e18633cbf 100644 --- a/src/c/assignment.d +++ b/src/c/assignment.d @@ -96,7 +96,7 @@ static cl_object make_setf_function_error(cl_object name) { return ecl_make_cclosure_va((cl_objectfn)unbound_setf_function_error, - name, ECL_NIL); + name, ECL_NIL, 0); } cl_object diff --git a/src/c/cfun.d b/src/c/cfun.d index 4eea0be0e..1d34b069c 100644 --- a/src/c/cfun.d +++ b/src/c/cfun.d @@ -22,45 +22,75 @@ ecl_make_cfun(cl_objectfn_fixed c_function, cl_object name, cl_object cblock, in { cl_object cf; + if (ecl_unlikely(narg < 0 || narg > ECL_C_ARGUMENTS_LIMIT)) { + FEprogram_error("ecl_make_cfun: ~a", 1, + (narg < 0) + ? ecl_make_constant_base_string("number of arguments must be greater than 0.",-1) + : ecl_make_constant_base_string("function requires too many arguments.",-1)); + } + cf = ecl_alloc_object(t_cfunfixed); - cf->cfunfixed.entry = dispatch_table[narg]; + cf->cfunfixed.entry = fixed_dispatch_table[narg]; cf->cfunfixed.entry_fixed = c_function; cf->cfunfixed.name = name; cf->cfunfixed.block = cblock; cf->cfunfixed.file = ECL_NIL; cf->cfunfixed.file_position = ecl_make_fixnum(-1); cf->cfunfixed.narg = narg; - if (ecl_unlikely(narg < 0 || narg > ECL_C_ARGUMENTS_LIMIT)) - FEprogram_error("ecl_make_cfun: function requires too many arguments.", 0); return cf; } cl_object -ecl_make_cfun_va(cl_objectfn c_function, cl_object name, cl_object cblock) +ecl_make_cfun_va(cl_objectfn c_function, cl_object name, cl_object cblock, int narg_fixed) { cl_object cf; + if (ecl_unlikely(narg_fixed < 0 || narg_fixed > ECL_C_ARGUMENTS_LIMIT)) { + FEprogram_error("ecl_make_cfun_va: ~a", 1, + (narg_fixed < 0) + ? ecl_make_constant_base_string("number of arguments must be greater than 0.",-1) + : ecl_make_constant_base_string("function requires too many arguments.",-1)); + } + cf = ecl_alloc_object(t_cfun); +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + cf->cfun.entry = variadic_dispatch_table[narg_fixed]; + cf->cfun.entry_variadic = c_function; +#else cf->cfun.entry = c_function; +#endif cf->cfun.name = name; cf->cfun.block = cblock; - cf->cfun.narg = -1; cf->cfun.file = ECL_NIL; cf->cfun.file_position = ecl_make_fixnum(-1); + cf->cfun.narg = narg_fixed; return cf; } cl_object -ecl_make_cclosure_va(cl_objectfn c_function, cl_object env, cl_object block) +ecl_make_cclosure_va(cl_objectfn c_function, cl_object env, cl_object block, int narg_fixed) { cl_object cc; + if (ecl_unlikely(narg_fixed < 0 || narg_fixed > ECL_C_ARGUMENTS_LIMIT)) { + FEprogram_error("ecl_make_cclosure_va: ~a", 1, + (narg_fixed < 0) + ? ecl_make_constant_base_string("number of arguments must be greater than 0.",-1) + : ecl_make_constant_base_string("function requires too many arguments.",-1)); + } + cc = ecl_alloc_object(t_cclosure); +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + cc->cclosure.entry = variadic_dispatch_table[narg_fixed]; + cc->cclosure.entry_variadic = c_function; +#else cc->cclosure.entry = c_function; +#endif cc->cclosure.env = env; cc->cclosure.block = block; cc->cclosure.file = ECL_NIL; cc->cclosure.file_position = ecl_make_fixnum(-1); + cc->cclosure.narg = narg_fixed; return cc; } @@ -80,18 +110,18 @@ ecl_def_c_macro(cl_object sym, cl_objectfn_fixed c_function, int narg) } void -ecl_def_c_macro_va(cl_object sym, cl_objectfn c_function) +ecl_def_c_macro_va(cl_object sym, cl_objectfn c_function, int narg_fixed) { si_fset(3, sym, - ecl_make_cfun_va(c_function, sym, ecl_symbol_value(@'si::*cblock*')), + ecl_make_cfun_va(c_function, sym, ecl_symbol_value(@'si::*cblock*'), narg_fixed), ECL_T); } void -ecl_def_c_function_va(cl_object sym, cl_objectfn c_function) +ecl_def_c_function_va(cl_object sym, cl_objectfn c_function, int narg_fixed) { si_fset(2, sym, - ecl_make_cfun_va(c_function, sym, ecl_symbol_value(@'si::*cblock*'))); + ecl_make_cfun_va(c_function, sym, ecl_symbol_value(@'si::*cblock*'), narg_fixed)); } cl_object diff --git a/src/c/cfun_dispatch.d b/src/c/cfun_dispatch.d index b2049809b..d6bb7ec59 100644 --- a/src/c/cfun_dispatch.d +++ b/src/c/cfun_dispatch.d @@ -9,516 +9,1301 @@ #error "Please adjust code to the constant!" #endif -static cl_object dispatch0 (cl_narg narg) { +typedef cl_object (*cl_objectfn_fixed0)(); +typedef cl_object (*cl_objectfn_fixed1)(cl_object); +typedef cl_object (*cl_objectfn_fixed2)(cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed3)(cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed4)(cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed5)(cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed6)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed7)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed8)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed9)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed10)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed11)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed12)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed13)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed14)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed15)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed16)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed17)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed18)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed19)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed20)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed21)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed22)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed23)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed24)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed25)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed26)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed27)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed28)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed29)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed30)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed31)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed32)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed33)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed34)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed35)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed36)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed37)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed38)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed39)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed40)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed41)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed42)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed43)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed44)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed45)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed46)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed47)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed48)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed49)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed50)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed51)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed52)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed53)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed54)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed55)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed56)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed57)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed58)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed59)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed60)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed61)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed62)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); +typedef cl_object (*cl_objectfn_fixed63)(cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object); + +static cl_object fixed_dispatch0 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; if (ecl_unlikely(narg != 0)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(); + return ((cl_objectfn_fixed0) fun->cfunfixed.entry_fixed)(); } -static cl_object dispatch1 (cl_narg narg, cl_object x0) { +static cl_object fixed_dispatch1 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[1]; if (ecl_unlikely(narg != 1)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0); + + va_start(args, narg); + for (int i = 0; i < 1; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed1) fun->cfunfixed.entry_fixed)(x[0]); } -static cl_object dispatch2 (cl_narg narg, cl_object x0, cl_object x1) { +static cl_object fixed_dispatch2 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[2]; if (ecl_unlikely(narg != 2)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1); + + va_start(args, narg); + for (int i = 0; i < 2; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed2) fun->cfunfixed.entry_fixed)(x[0], x[1]); } -static cl_object dispatch3 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2) { +static cl_object fixed_dispatch3 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[3]; if (ecl_unlikely(narg != 3)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2); + + va_start(args, narg); + for (int i = 0; i < 3; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed3) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2]); } -static cl_object dispatch4 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3) { +static cl_object fixed_dispatch4 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[4]; if (ecl_unlikely(narg != 4)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3); + + va_start(args, narg); + for (int i = 0; i < 4; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed4) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3]); } -static cl_object dispatch5 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4) { +static cl_object fixed_dispatch5 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[5]; if (ecl_unlikely(narg != 5)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4); + + va_start(args, narg); + for (int i = 0; i < 5; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed5) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4]); } -static cl_object dispatch6 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5) { +static cl_object fixed_dispatch6 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[6]; if (ecl_unlikely(narg != 6)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5); + + va_start(args, narg); + for (int i = 0; i < 6; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed6) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5]); } -static cl_object dispatch7 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6) { +static cl_object fixed_dispatch7 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[7]; if (ecl_unlikely(narg != 7)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6); + + va_start(args, narg); + for (int i = 0; i < 7; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed7) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6]); } -static cl_object dispatch8 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7) { +static cl_object fixed_dispatch8 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[8]; if (ecl_unlikely(narg != 8)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7); + + va_start(args, narg); + for (int i = 0; i < 8; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed8) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7]); } -static cl_object dispatch9 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8) { +static cl_object fixed_dispatch9 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[9]; if (ecl_unlikely(narg != 9)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8); + + va_start(args, narg); + for (int i = 0; i < 9; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed9) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8]); } -static cl_object dispatch10 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9) { +static cl_object fixed_dispatch10 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[10]; if (ecl_unlikely(narg != 10)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); + + va_start(args, narg); + for (int i = 0; i < 10; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed10) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9]); } -static cl_object dispatch11 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10) { +static cl_object fixed_dispatch11 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[11]; if (ecl_unlikely(narg != 11)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); + + va_start(args, narg); + for (int i = 0; i < 11; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed11) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10]); } -static cl_object dispatch12 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11) { +static cl_object fixed_dispatch12 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[12]; if (ecl_unlikely(narg != 12)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11); + + va_start(args, narg); + for (int i = 0; i < 12; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed12) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11]); } -static cl_object dispatch13 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12) { +static cl_object fixed_dispatch13 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[13]; if (ecl_unlikely(narg != 13)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12); + + va_start(args, narg); + for (int i = 0; i < 13; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed13) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12]); } -static cl_object dispatch14 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13) { +static cl_object fixed_dispatch14 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[14]; if (ecl_unlikely(narg != 14)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13); + + va_start(args, narg); + for (int i = 0; i < 14; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed14) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13]); } -static cl_object dispatch15 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14) { +static cl_object fixed_dispatch15 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[15]; if (ecl_unlikely(narg != 15)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14); + + va_start(args, narg); + for (int i = 0; i < 15; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed15) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14]); } -static cl_object dispatch16 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15) { +static cl_object fixed_dispatch16 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[16]; if (ecl_unlikely(narg != 16)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15); + + va_start(args, narg); + for (int i = 0; i < 16; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed16) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15]); } -static cl_object dispatch17 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16) { +static cl_object fixed_dispatch17 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[17]; if (ecl_unlikely(narg != 17)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16); + + va_start(args, narg); + for (int i = 0; i < 17; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed17) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16]); } -static cl_object dispatch18 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17) { +static cl_object fixed_dispatch18 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[18]; if (ecl_unlikely(narg != 18)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17); + + va_start(args, narg); + for (int i = 0; i < 18; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed18) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17]); } -static cl_object dispatch19 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18) { +static cl_object fixed_dispatch19 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[19]; if (ecl_unlikely(narg != 19)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18); + + va_start(args, narg); + for (int i = 0; i < 19; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed19) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18]); } -static cl_object dispatch20 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19) { +static cl_object fixed_dispatch20 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[20]; if (ecl_unlikely(narg != 20)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19); + + va_start(args, narg); + for (int i = 0; i < 20; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed20) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19]); } -static cl_object dispatch21 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20) { +static cl_object fixed_dispatch21 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[21]; if (ecl_unlikely(narg != 21)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20); + + va_start(args, narg); + for (int i = 0; i < 21; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed21) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20]); } -static cl_object dispatch22 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21) { +static cl_object fixed_dispatch22 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[22]; if (ecl_unlikely(narg != 22)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21); + + va_start(args, narg); + for (int i = 0; i < 22; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed22) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21]); } -static cl_object dispatch23 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22) { +static cl_object fixed_dispatch23 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[23]; if (ecl_unlikely(narg != 23)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22); + + va_start(args, narg); + for (int i = 0; i < 23; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed23) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22]); } -static cl_object dispatch24 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23) { +static cl_object fixed_dispatch24 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[24]; if (ecl_unlikely(narg != 24)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23); + + va_start(args, narg); + for (int i = 0; i < 24; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed24) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23]); } -static cl_object dispatch25 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24) { +static cl_object fixed_dispatch25 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[25]; if (ecl_unlikely(narg != 25)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24); + + va_start(args, narg); + for (int i = 0; i < 25; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed25) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24]); } -static cl_object dispatch26 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25) { +static cl_object fixed_dispatch26 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[26]; if (ecl_unlikely(narg != 26)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25); + + va_start(args, narg); + for (int i = 0; i < 26; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed26) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25]); } -static cl_object dispatch27 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26) { +static cl_object fixed_dispatch27 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[27]; if (ecl_unlikely(narg != 27)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26); + + va_start(args, narg); + for (int i = 0; i < 27; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed27) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26]); } -static cl_object dispatch28 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27) { +static cl_object fixed_dispatch28 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[28]; if (ecl_unlikely(narg != 28)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27); + + va_start(args, narg); + for (int i = 0; i < 28; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed28) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27]); } -static cl_object dispatch29 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28) { +static cl_object fixed_dispatch29 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[29]; if (ecl_unlikely(narg != 29)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28); + + va_start(args, narg); + for (int i = 0; i < 29; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed29) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28]); } -static cl_object dispatch30 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29) { +static cl_object fixed_dispatch30 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[30]; if (ecl_unlikely(narg != 30)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29); + + va_start(args, narg); + for (int i = 0; i < 30; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed30) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29]); } -static cl_object dispatch31 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30) { +static cl_object fixed_dispatch31 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[31]; if (ecl_unlikely(narg != 31)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30); + + va_start(args, narg); + for (int i = 0; i < 31; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed31) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30]); } -static cl_object dispatch32 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31) { +static cl_object fixed_dispatch32 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[32]; if (ecl_unlikely(narg != 32)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31); + + va_start(args, narg); + for (int i = 0; i < 32; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed32) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31]); } -static cl_object dispatch33 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32) { +static cl_object fixed_dispatch33 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[33]; if (ecl_unlikely(narg != 33)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32); + + va_start(args, narg); + for (int i = 0; i < 33; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed33) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32]); } -static cl_object dispatch34 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33) { +static cl_object fixed_dispatch34 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[34]; if (ecl_unlikely(narg != 34)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33); + + va_start(args, narg); + for (int i = 0; i < 34; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed34) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33]); } -static cl_object dispatch35 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34) { +static cl_object fixed_dispatch35 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[35]; if (ecl_unlikely(narg != 35)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34); + + va_start(args, narg); + for (int i = 0; i < 35; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed35) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34]); } -static cl_object dispatch36 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35) { +static cl_object fixed_dispatch36 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[36]; if (ecl_unlikely(narg != 36)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35); + + va_start(args, narg); + for (int i = 0; i < 36; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed36) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35]); } -static cl_object dispatch37 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36) { +static cl_object fixed_dispatch37 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[37]; if (ecl_unlikely(narg != 37)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36); + + va_start(args, narg); + for (int i = 0; i < 37; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed37) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36]); } -static cl_object dispatch38 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37) { +static cl_object fixed_dispatch38 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[38]; if (ecl_unlikely(narg != 38)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37); + + va_start(args, narg); + for (int i = 0; i < 38; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed38) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37]); } -static cl_object dispatch39 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38) { +static cl_object fixed_dispatch39 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[39]; if (ecl_unlikely(narg != 39)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38); + + va_start(args, narg); + for (int i = 0; i < 39; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed39) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38]); } -static cl_object dispatch40 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39) { +static cl_object fixed_dispatch40 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[40]; if (ecl_unlikely(narg != 40)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39); + + va_start(args, narg); + for (int i = 0; i < 40; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed40) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39]); } -static cl_object dispatch41 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40) { +static cl_object fixed_dispatch41 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[41]; if (ecl_unlikely(narg != 41)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40); + + va_start(args, narg); + for (int i = 0; i < 41; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed41) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40]); } -static cl_object dispatch42 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41) { +static cl_object fixed_dispatch42 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[42]; if (ecl_unlikely(narg != 42)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41); + + va_start(args, narg); + for (int i = 0; i < 42; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed42) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41]); } -static cl_object dispatch43 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42) { +static cl_object fixed_dispatch43 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[43]; if (ecl_unlikely(narg != 43)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42); + + va_start(args, narg); + for (int i = 0; i < 43; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed43) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42]); } -static cl_object dispatch44 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43) { +static cl_object fixed_dispatch44 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[44]; if (ecl_unlikely(narg != 44)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43); + + va_start(args, narg); + for (int i = 0; i < 44; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed44) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43]); } -static cl_object dispatch45 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44) { +static cl_object fixed_dispatch45 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[45]; if (ecl_unlikely(narg != 45)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44); + + va_start(args, narg); + for (int i = 0; i < 45; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed45) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44]); } -static cl_object dispatch46 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45) { +static cl_object fixed_dispatch46 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[46]; if (ecl_unlikely(narg != 46)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45); + + va_start(args, narg); + for (int i = 0; i < 46; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed46) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45]); } -static cl_object dispatch47 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46) { +static cl_object fixed_dispatch47 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[47]; if (ecl_unlikely(narg != 47)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46); + + va_start(args, narg); + for (int i = 0; i < 47; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed47) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46]); } -static cl_object dispatch48 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47) { +static cl_object fixed_dispatch48 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[48]; if (ecl_unlikely(narg != 48)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47); + + va_start(args, narg); + for (int i = 0; i < 48; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed48) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47]); } -static cl_object dispatch49 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48) { +static cl_object fixed_dispatch49 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[49]; if (ecl_unlikely(narg != 49)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48); + + va_start(args, narg); + for (int i = 0; i < 49; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed49) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48]); } -static cl_object dispatch50 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49) { +static cl_object fixed_dispatch50 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[50]; if (ecl_unlikely(narg != 50)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49); + + va_start(args, narg); + for (int i = 0; i < 50; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed50) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49]); } -static cl_object dispatch51 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50) { +static cl_object fixed_dispatch51 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[51]; if (ecl_unlikely(narg != 51)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50); + + va_start(args, narg); + for (int i = 0; i < 51; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed51) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50]); } -static cl_object dispatch52 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51) { +static cl_object fixed_dispatch52 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[52]; if (ecl_unlikely(narg != 52)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51); + + va_start(args, narg); + for (int i = 0; i < 52; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed52) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51]); } -static cl_object dispatch53 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52) { +static cl_object fixed_dispatch53 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[53]; if (ecl_unlikely(narg != 53)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52); + + va_start(args, narg); + for (int i = 0; i < 53; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed53) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52]); } -static cl_object dispatch54 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53) { +static cl_object fixed_dispatch54 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[54]; if (ecl_unlikely(narg != 54)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53); + + va_start(args, narg); + for (int i = 0; i < 54; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed54) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53]); } -static cl_object dispatch55 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54) { +static cl_object fixed_dispatch55 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[55]; if (ecl_unlikely(narg != 55)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54); + + va_start(args, narg); + for (int i = 0; i < 55; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed55) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54]); } -static cl_object dispatch56 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55) { +static cl_object fixed_dispatch56 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[56]; if (ecl_unlikely(narg != 56)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55); + + va_start(args, narg); + for (int i = 0; i < 56; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed56) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55]); } -static cl_object dispatch57 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56) { +static cl_object fixed_dispatch57 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[57]; if (ecl_unlikely(narg != 57)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56); + + va_start(args, narg); + for (int i = 0; i < 57; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed57) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56]); } -static cl_object dispatch58 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57) { +static cl_object fixed_dispatch58 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[58]; if (ecl_unlikely(narg != 58)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57); + + va_start(args, narg); + for (int i = 0; i < 58; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed58) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57]); } -static cl_object dispatch59 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57, cl_object x58) { +static cl_object fixed_dispatch59 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[59]; if (ecl_unlikely(narg != 59)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58); + + va_start(args, narg); + for (int i = 0; i < 59; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed59) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58]); } -static cl_object dispatch60 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57, cl_object x58, cl_object x59) { +static cl_object fixed_dispatch60 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[60]; if (ecl_unlikely(narg != 60)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59); + + va_start(args, narg); + for (int i = 0; i < 60; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed60) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59]); } -static cl_object dispatch61 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57, cl_object x58, cl_object x59, cl_object x60) { +static cl_object fixed_dispatch61 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[61]; if (ecl_unlikely(narg != 61)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60); + + va_start(args, narg); + for (int i = 0; i < 61; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed61) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60]); } -static cl_object dispatch62 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57, cl_object x58, cl_object x59, cl_object x60, cl_object x61) { +static cl_object fixed_dispatch62 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[62]; if (ecl_unlikely(narg != 62)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61); + + va_start(args, narg); + for (int i = 0; i < 62; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed62) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61]); } -static cl_object dispatch63 (cl_narg narg, cl_object x0, cl_object x1, cl_object x2, cl_object x3, cl_object x4, cl_object x5, cl_object x6, cl_object x7, cl_object x8, cl_object x9, cl_object x10, cl_object x11, cl_object x12, cl_object x13, cl_object x14, cl_object x15, cl_object x16, cl_object x17, cl_object x18, cl_object x19, cl_object x20, cl_object x21, cl_object x22, cl_object x23, cl_object x24, cl_object x25, cl_object x26, cl_object x27, cl_object x28, cl_object x29, cl_object x30, cl_object x31, cl_object x32, cl_object x33, cl_object x34, cl_object x35, cl_object x36, cl_object x37, cl_object x38, cl_object x39, cl_object x40, cl_object x41, cl_object x42, cl_object x43, cl_object x44, cl_object x45, cl_object x46, cl_object x47, cl_object x48, cl_object x49, cl_object x50, cl_object x51, cl_object x52, cl_object x53, cl_object x54, cl_object x55, cl_object x56, cl_object x57, cl_object x58, cl_object x59, cl_object x60, cl_object x61, cl_object x62) { +static cl_object fixed_dispatch63 (cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object fun = the_env->function; + va_list args; + cl_object x[63]; if (ecl_unlikely(narg != 63)) FEwrong_num_arguments(fun); - return fun->cfunfixed.entry_fixed(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62); + + va_start(args, narg); + for (int i = 0; i < 63; i++) + x[i] = va_arg(args, cl_object); + va_end(args); + + return ((cl_objectfn_fixed63) fun->cfunfixed.entry_fixed)(x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62]); } -static cl_objectfn dispatch_table[ECL_C_ARGUMENTS_LIMIT+1] = { -(cl_objectfn)dispatch0, -(cl_objectfn)dispatch1, -(cl_objectfn)dispatch2, -(cl_objectfn)dispatch3, -(cl_objectfn)dispatch4, -(cl_objectfn)dispatch5, -(cl_objectfn)dispatch6, -(cl_objectfn)dispatch7, -(cl_objectfn)dispatch8, -(cl_objectfn)dispatch9, -(cl_objectfn)dispatch10, -(cl_objectfn)dispatch11, -(cl_objectfn)dispatch12, -(cl_objectfn)dispatch13, -(cl_objectfn)dispatch14, -(cl_objectfn)dispatch15, -(cl_objectfn)dispatch16, -(cl_objectfn)dispatch17, -(cl_objectfn)dispatch18, -(cl_objectfn)dispatch19, -(cl_objectfn)dispatch20, -(cl_objectfn)dispatch21, -(cl_objectfn)dispatch22, -(cl_objectfn)dispatch23, -(cl_objectfn)dispatch24, -(cl_objectfn)dispatch25, -(cl_objectfn)dispatch26, -(cl_objectfn)dispatch27, -(cl_objectfn)dispatch28, -(cl_objectfn)dispatch29, -(cl_objectfn)dispatch30, -(cl_objectfn)dispatch31, -(cl_objectfn)dispatch32, -(cl_objectfn)dispatch33, -(cl_objectfn)dispatch34, -(cl_objectfn)dispatch35, -(cl_objectfn)dispatch36, -(cl_objectfn)dispatch37, -(cl_objectfn)dispatch38, -(cl_objectfn)dispatch39, -(cl_objectfn)dispatch40, -(cl_objectfn)dispatch41, -(cl_objectfn)dispatch42, -(cl_objectfn)dispatch43, -(cl_objectfn)dispatch44, -(cl_objectfn)dispatch45, -(cl_objectfn)dispatch46, -(cl_objectfn)dispatch47, -(cl_objectfn)dispatch48, -(cl_objectfn)dispatch49, -(cl_objectfn)dispatch50, -(cl_objectfn)dispatch51, -(cl_objectfn)dispatch52, -(cl_objectfn)dispatch53, -(cl_objectfn)dispatch54, -(cl_objectfn)dispatch55, -(cl_objectfn)dispatch56, -(cl_objectfn)dispatch57, -(cl_objectfn)dispatch58, -(cl_objectfn)dispatch59, -(cl_objectfn)dispatch60, -(cl_objectfn)dispatch61, -(cl_objectfn)dispatch62, -(cl_objectfn)dispatch63}; + +static cl_objectfn fixed_dispatch_table[ECL_C_ARGUMENTS_LIMIT+1] = { +(cl_objectfn)fixed_dispatch0, +(cl_objectfn)fixed_dispatch1, +(cl_objectfn)fixed_dispatch2, +(cl_objectfn)fixed_dispatch3, +(cl_objectfn)fixed_dispatch4, +(cl_objectfn)fixed_dispatch5, +(cl_objectfn)fixed_dispatch6, +(cl_objectfn)fixed_dispatch7, +(cl_objectfn)fixed_dispatch8, +(cl_objectfn)fixed_dispatch9, +(cl_objectfn)fixed_dispatch10, +(cl_objectfn)fixed_dispatch11, +(cl_objectfn)fixed_dispatch12, +(cl_objectfn)fixed_dispatch13, +(cl_objectfn)fixed_dispatch14, +(cl_objectfn)fixed_dispatch15, +(cl_objectfn)fixed_dispatch16, +(cl_objectfn)fixed_dispatch17, +(cl_objectfn)fixed_dispatch18, +(cl_objectfn)fixed_dispatch19, +(cl_objectfn)fixed_dispatch20, +(cl_objectfn)fixed_dispatch21, +(cl_objectfn)fixed_dispatch22, +(cl_objectfn)fixed_dispatch23, +(cl_objectfn)fixed_dispatch24, +(cl_objectfn)fixed_dispatch25, +(cl_objectfn)fixed_dispatch26, +(cl_objectfn)fixed_dispatch27, +(cl_objectfn)fixed_dispatch28, +(cl_objectfn)fixed_dispatch29, +(cl_objectfn)fixed_dispatch30, +(cl_objectfn)fixed_dispatch31, +(cl_objectfn)fixed_dispatch32, +(cl_objectfn)fixed_dispatch33, +(cl_objectfn)fixed_dispatch34, +(cl_objectfn)fixed_dispatch35, +(cl_objectfn)fixed_dispatch36, +(cl_objectfn)fixed_dispatch37, +(cl_objectfn)fixed_dispatch38, +(cl_objectfn)fixed_dispatch39, +(cl_objectfn)fixed_dispatch40, +(cl_objectfn)fixed_dispatch41, +(cl_objectfn)fixed_dispatch42, +(cl_objectfn)fixed_dispatch43, +(cl_objectfn)fixed_dispatch44, +(cl_objectfn)fixed_dispatch45, +(cl_objectfn)fixed_dispatch46, +(cl_objectfn)fixed_dispatch47, +(cl_objectfn)fixed_dispatch48, +(cl_objectfn)fixed_dispatch49, +(cl_objectfn)fixed_dispatch50, +(cl_objectfn)fixed_dispatch51, +(cl_objectfn)fixed_dispatch52, +(cl_objectfn)fixed_dispatch53, +(cl_objectfn)fixed_dispatch54, +(cl_objectfn)fixed_dispatch55, +(cl_objectfn)fixed_dispatch56, +(cl_objectfn)fixed_dispatch57, +(cl_objectfn)fixed_dispatch58, +(cl_objectfn)fixed_dispatch59, +(cl_objectfn)fixed_dispatch60, +(cl_objectfn)fixed_dispatch61, +(cl_objectfn)fixed_dispatch62, +(cl_objectfn)fixed_dispatch63}; + +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + +typedef cl_object (*cl_objectfn0)(cl_narg narg, ...); +typedef cl_object (*cl_objectfn1)(cl_narg narg, cl_object, ...); +typedef cl_object (*cl_objectfn2)(cl_narg narg, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn3)(cl_narg narg, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn4)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn5)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn6)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn7)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn8)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn9)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn10)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn11)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn12)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn13)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn14)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn15)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn16)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn17)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn18)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn19)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn20)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn21)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn22)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn23)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn24)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn25)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn26)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn27)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn28)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn29)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn30)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn31)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn32)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn33)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn34)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn35)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn36)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn37)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn38)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn39)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn40)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn41)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn42)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn43)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn44)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn45)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn46)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn47)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn48)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn49)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn50)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn51)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn52)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn53)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn54)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn55)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn56)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn57)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn58)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn59)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn60)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn61)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn62)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); +typedef cl_object (*cl_objectfn63)(cl_narg narg, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, cl_object, ...); + +#define DEFINE_VARIADIC_DISPATCH(n) \ + static cl_object variadic_dispatch ## n (cl_narg narg, ...) { \ + const cl_env_ptr the_env = ecl_process_env(); \ + cl_object fun = the_env->function; \ + va_list args; \ + cl_object x[ECL_C_ARGUMENTS_LIMIT + 1]; \ + va_start(args, narg); \ + for (int i = 0; \ + i < (narg < ECL_C_ARGUMENTS_LIMIT + 1 ? narg : ECL_C_ARGUMENTS_LIMIT + 1); \ + i++) \ + x[i] = va_arg(args, cl_object); \ + va_end(args); \ + return ((cl_objectfn ## n) fun->cfun.entry_variadic)(narg, x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62], x[63]); \ +} + +DEFINE_VARIADIC_DISPATCH(0) +DEFINE_VARIADIC_DISPATCH(1) +DEFINE_VARIADIC_DISPATCH(2) +DEFINE_VARIADIC_DISPATCH(3) +DEFINE_VARIADIC_DISPATCH(4) +DEFINE_VARIADIC_DISPATCH(5) +DEFINE_VARIADIC_DISPATCH(6) +DEFINE_VARIADIC_DISPATCH(7) +DEFINE_VARIADIC_DISPATCH(8) +DEFINE_VARIADIC_DISPATCH(9) +DEFINE_VARIADIC_DISPATCH(10) +DEFINE_VARIADIC_DISPATCH(11) +DEFINE_VARIADIC_DISPATCH(12) +DEFINE_VARIADIC_DISPATCH(13) +DEFINE_VARIADIC_DISPATCH(14) +DEFINE_VARIADIC_DISPATCH(15) +DEFINE_VARIADIC_DISPATCH(16) +DEFINE_VARIADIC_DISPATCH(17) +DEFINE_VARIADIC_DISPATCH(18) +DEFINE_VARIADIC_DISPATCH(19) +DEFINE_VARIADIC_DISPATCH(20) +DEFINE_VARIADIC_DISPATCH(21) +DEFINE_VARIADIC_DISPATCH(22) +DEFINE_VARIADIC_DISPATCH(23) +DEFINE_VARIADIC_DISPATCH(24) +DEFINE_VARIADIC_DISPATCH(25) +DEFINE_VARIADIC_DISPATCH(26) +DEFINE_VARIADIC_DISPATCH(27) +DEFINE_VARIADIC_DISPATCH(28) +DEFINE_VARIADIC_DISPATCH(29) +DEFINE_VARIADIC_DISPATCH(30) +DEFINE_VARIADIC_DISPATCH(31) +DEFINE_VARIADIC_DISPATCH(32) +DEFINE_VARIADIC_DISPATCH(33) +DEFINE_VARIADIC_DISPATCH(34) +DEFINE_VARIADIC_DISPATCH(35) +DEFINE_VARIADIC_DISPATCH(36) +DEFINE_VARIADIC_DISPATCH(37) +DEFINE_VARIADIC_DISPATCH(38) +DEFINE_VARIADIC_DISPATCH(39) +DEFINE_VARIADIC_DISPATCH(40) +DEFINE_VARIADIC_DISPATCH(41) +DEFINE_VARIADIC_DISPATCH(42) +DEFINE_VARIADIC_DISPATCH(43) +DEFINE_VARIADIC_DISPATCH(44) +DEFINE_VARIADIC_DISPATCH(45) +DEFINE_VARIADIC_DISPATCH(46) +DEFINE_VARIADIC_DISPATCH(47) +DEFINE_VARIADIC_DISPATCH(48) +DEFINE_VARIADIC_DISPATCH(49) +DEFINE_VARIADIC_DISPATCH(50) +DEFINE_VARIADIC_DISPATCH(51) +DEFINE_VARIADIC_DISPATCH(52) +DEFINE_VARIADIC_DISPATCH(53) +DEFINE_VARIADIC_DISPATCH(54) +DEFINE_VARIADIC_DISPATCH(55) +DEFINE_VARIADIC_DISPATCH(56) +DEFINE_VARIADIC_DISPATCH(57) +DEFINE_VARIADIC_DISPATCH(58) +DEFINE_VARIADIC_DISPATCH(59) +DEFINE_VARIADIC_DISPATCH(60) +DEFINE_VARIADIC_DISPATCH(61) +DEFINE_VARIADIC_DISPATCH(62) +DEFINE_VARIADIC_DISPATCH(63) + +static cl_objectfn variadic_dispatch_table[ECL_C_ARGUMENTS_LIMIT+1] = { +(cl_objectfn)variadic_dispatch0, +(cl_objectfn)variadic_dispatch1, +(cl_objectfn)variadic_dispatch2, +(cl_objectfn)variadic_dispatch3, +(cl_objectfn)variadic_dispatch4, +(cl_objectfn)variadic_dispatch5, +(cl_objectfn)variadic_dispatch6, +(cl_objectfn)variadic_dispatch7, +(cl_objectfn)variadic_dispatch8, +(cl_objectfn)variadic_dispatch9, +(cl_objectfn)variadic_dispatch10, +(cl_objectfn)variadic_dispatch11, +(cl_objectfn)variadic_dispatch12, +(cl_objectfn)variadic_dispatch13, +(cl_objectfn)variadic_dispatch14, +(cl_objectfn)variadic_dispatch15, +(cl_objectfn)variadic_dispatch16, +(cl_objectfn)variadic_dispatch17, +(cl_objectfn)variadic_dispatch18, +(cl_objectfn)variadic_dispatch19, +(cl_objectfn)variadic_dispatch20, +(cl_objectfn)variadic_dispatch21, +(cl_objectfn)variadic_dispatch22, +(cl_objectfn)variadic_dispatch23, +(cl_objectfn)variadic_dispatch24, +(cl_objectfn)variadic_dispatch25, +(cl_objectfn)variadic_dispatch26, +(cl_objectfn)variadic_dispatch27, +(cl_objectfn)variadic_dispatch28, +(cl_objectfn)variadic_dispatch29, +(cl_objectfn)variadic_dispatch30, +(cl_objectfn)variadic_dispatch31, +(cl_objectfn)variadic_dispatch32, +(cl_objectfn)variadic_dispatch33, +(cl_objectfn)variadic_dispatch34, +(cl_objectfn)variadic_dispatch35, +(cl_objectfn)variadic_dispatch36, +(cl_objectfn)variadic_dispatch37, +(cl_objectfn)variadic_dispatch38, +(cl_objectfn)variadic_dispatch39, +(cl_objectfn)variadic_dispatch40, +(cl_objectfn)variadic_dispatch41, +(cl_objectfn)variadic_dispatch42, +(cl_objectfn)variadic_dispatch43, +(cl_objectfn)variadic_dispatch44, +(cl_objectfn)variadic_dispatch45, +(cl_objectfn)variadic_dispatch46, +(cl_objectfn)variadic_dispatch47, +(cl_objectfn)variadic_dispatch48, +(cl_objectfn)variadic_dispatch49, +(cl_objectfn)variadic_dispatch50, +(cl_objectfn)variadic_dispatch51, +(cl_objectfn)variadic_dispatch52, +(cl_objectfn)variadic_dispatch53, +(cl_objectfn)variadic_dispatch54, +(cl_objectfn)variadic_dispatch55, +(cl_objectfn)variadic_dispatch56, +(cl_objectfn)variadic_dispatch57, +(cl_objectfn)variadic_dispatch58, +(cl_objectfn)variadic_dispatch59, +(cl_objectfn)variadic_dispatch60, +(cl_objectfn)variadic_dispatch61, +(cl_objectfn)variadic_dispatch62, +(cl_objectfn)variadic_dispatch63}; + +#endif diff --git a/src/c/clos/accessor.d b/src/c/clos/accessor.d index fe912879b..e7e4a0f05 100644 --- a/src/c/clos/accessor.d +++ b/src/c/clos/accessor.d @@ -114,15 +114,23 @@ ensure_up_to_date_instance(cl_object instance) } cl_object -ecl_slot_reader_dispatch(cl_narg narg, cl_object instance) +ecl_slot_reader_dispatch(cl_narg narg, ... /* cl_object instance */) { const cl_env_ptr env = ecl_process_env(); cl_object gfun = env->function; cl_object index, value; ecl_cache_record_ptr e; + cl_object instance; - unlikely_if (narg != 1) + unlikely_if (narg != 1) { FEwrong_num_arguments(gfun); + } else { + va_list args; + va_start(args, narg); + instance = va_arg(args, cl_object); + va_end(args); + } + unlikely_if (!ECL_INSTANCEP(instance)) { no_applicable_method(env, gfun, ecl_list1(instance)); return env->values[0]; @@ -159,16 +167,24 @@ ecl_slot_reader_dispatch(cl_narg narg, cl_object instance) } cl_object -ecl_slot_writer_dispatch(cl_narg narg, cl_object value, cl_object instance) +ecl_slot_writer_dispatch(cl_narg narg, ... /* cl_object value, cl_object instance */) { const cl_env_ptr env = ecl_process_env(); cl_object gfun = env->function; ecl_cache_record_ptr e; cl_object index; + cl_object value, instance; unlikely_if (narg != 2) { FEwrong_num_arguments(gfun); + } else { + va_list args; + va_start(args, narg); + value = va_arg(args, cl_object); + instance = va_arg(args, cl_object); + va_end(args); } + unlikely_if (!ECL_INSTANCEP(instance)) { no_applicable_method(env, gfun, cl_list(2, value, instance)); return env->values[0]; diff --git a/src/c/clos/gfun.d b/src/c/clos/gfun.d index 80aceb991..38759c0ea 100644 --- a/src/c/clos/gfun.d +++ b/src/c/clos/gfun.d @@ -86,13 +86,11 @@ clos_set_funcallable_instance_function(cl_object x, cl_object function_or_t) x->instance.isgf = ECL_NOT_FUNCALLABLE; x->instance.entry = FEnot_funcallable_vararg; } else if (function_or_t == @'clos::standard-optimized-reader-method') { - /* WARNING: We assume that f(a,...) behaves as f(a,b) */ x->instance.isgf = ECL_READER_DISPATCH; - x->instance.entry = (cl_objectfn)ecl_slot_reader_dispatch; + x->instance.entry = ecl_slot_reader_dispatch; } else if (function_or_t == @'clos::standard-optimized-writer-method') { - /* WARNING: We assume that f(a,...) behaves as f(a,b) */ x->instance.isgf = ECL_WRITER_DISPATCH; - x->instance.entry = (cl_objectfn)ecl_slot_writer_dispatch; + x->instance.entry = ecl_slot_writer_dispatch; } else if (Null(cl_functionp(function_or_t))) { FEwrong_type_argument(@'function', function_or_t); } else { diff --git a/src/c/hash.d b/src/c/hash.d index 31b7d9efa..f121c648d 100644 --- a/src/c/hash.d +++ b/src/c/hash.d @@ -1284,7 +1284,7 @@ cl_hash_table_count(cl_object ht) } static cl_object -si_hash_table_iterate(cl_narg narg) +si_hash_table_iterate(cl_narg narg, ...) { const cl_env_ptr the_env = ecl_process_env(); cl_object env = the_env->function->cclosure.env; @@ -1313,9 +1313,10 @@ cl_object si_hash_table_iterator(cl_object ht) { assert_type_hash_table(@[si::hash-table-iterator], 1, ht); - @(return ecl_make_cclosure_va((cl_objectfn)si_hash_table_iterate, + @(return ecl_make_cclosure_va(si_hash_table_iterate, cl_list(2, ecl_make_fixnum(-1), ht), - @'si::hash-table-iterator')); + @'si::hash-table-iterator', + 0)); } cl_object diff --git a/src/c/interpreter.d b/src/c/interpreter.d index c2932518c..22b78af61 100644 --- a/src/c/interpreter.d +++ b/src/c/interpreter.d @@ -523,6 +523,9 @@ ecl_interpret(cl_object frame, cl_object env, cl_object bytecodes) frame_aux.base); break; case t_cfun: +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + the_env->function = reg0; +#endif reg0 = APPLY(narg, reg0->cfun.entry, frame_aux.base); break; case t_cclosure: diff --git a/src/c/read.d b/src/c/read.d index 382c08b43..ec5ba4ac0 100644 --- a/src/c/read.d +++ b/src/c/read.d @@ -2425,7 +2425,7 @@ ecl_init_module(cl_object block, void (*entry_point)(cl_object)) assert(block->cblock.cfuns_size == 0 || VV != NULL); for (i = 0; i < block->cblock.cfuns_size; i++) { - const struct ecl_cfun *prototype = block->cblock.cfuns+i; + const struct ecl_cfunfixed *prototype = block->cblock.cfuns+i; cl_index fname_location = ecl_fixnum(prototype->block); cl_object fname = VV[fname_location]; cl_index location = ecl_fixnum(prototype->name); @@ -2433,7 +2433,7 @@ ecl_init_module(cl_object block, void (*entry_point)(cl_object)) int narg = prototype->narg; VV[location] = narg<0? ecl_make_cfun_va((cl_objectfn)prototype->entry, - fname, block) : + fname, block, -narg - 1) : ecl_make_cfun((cl_objectfn_fixed)prototype->entry, fname, block, narg); /* Add source file info */ diff --git a/src/c/symbols_list.h b/src/c/symbols_list.h index c52637a40..918b48229 100755 --- a/src/c/symbols_list.h +++ b/src/c/symbols_list.h @@ -21,6 +21,9 @@ #define FFI_ "FFI::" typedef struct { const char *name, *translation; + /* narg >= 0: function takes exactly narg arguments */ + /* narg < 0: function takes -narg-1 required arguments */ + int narg; } cl_symbol_initializer; #else #include "ecl_constants.h" @@ -105,11 +108,11 @@ cl_symbols[] = { {"+", CL_SPECIAL, cl_P, -1, ECL_NIL}, {"++", CL_SPECIAL, NULL, -1, ECL_NIL}, {"+++", CL_SPECIAL, NULL, -1, ECL_NIL}, -{"-", CL_SPECIAL, cl_M, -1, ECL_NIL}, +{"-", CL_SPECIAL, cl_M, -2, ECL_NIL}, {"*", CL_SPECIAL, cl_X, -1, ECL_NIL}, {"**", CL_SPECIAL, NULL, -1, ECL_NIL}, {"***", CL_SPECIAL, NULL, -1, ECL_NIL}, -{"/", CL_SPECIAL, cl_N, -1, ECL_NIL}, +{"/", CL_SPECIAL, cl_N, -2, ECL_NIL}, {"//", CL_SPECIAL, NULL, -1, ECL_NIL}, {"///", CL_SPECIAL, NULL, -1, ECL_NIL}, {"/=", CL_ORDINARY, cl_NE, -1, OBJNULL}, @@ -166,7 +169,7 @@ cl_symbols[] = { {"1-", CL_ORDINARY, cl_1M, 1, OBJNULL}, {"<", CL_ORDINARY, cl_L, -1, OBJNULL}, {"<=", CL_ORDINARY, cl_LE, -1, OBJNULL}, -{"=", CL_ORDINARY, cl_E, -1, OBJNULL}, +{"=", CL_ORDINARY, cl_E, -2, OBJNULL}, {">", CL_ORDINARY, cl_G, -1, OBJNULL}, {">=", CL_ORDINARY, cl_GE, -1, OBJNULL}, {"ABORT", CL_ORDINARY, ECL_NAME(cl_abort), -1, OBJNULL}, @@ -174,17 +177,17 @@ cl_symbols[] = { {"ACONS", CL_ORDINARY, cl_acons, 3, OBJNULL}, {"ACOS", CL_ORDINARY, ECL_NAME(cl_acos), 1, OBJNULL}, {"ACOSH", CL_ORDINARY, ECL_NAME(cl_acosh), 1, OBJNULL}, -{"ADJOIN", CL_ORDINARY, cl_adjoin, -1, OBJNULL}, -{"ADJUST-ARRAY", CL_ORDINARY, ECL_NAME(cl_adjust_array), -1, OBJNULL}, +{"ADJOIN", CL_ORDINARY, cl_adjoin, -3, OBJNULL}, +{"ADJUST-ARRAY", CL_ORDINARY, ECL_NAME(cl_adjust_array), -3, OBJNULL}, {"ADJUSTABLE-ARRAY-P", CL_ORDINARY, cl_adjustable_array_p, 1, OBJNULL}, {"ALPHA-CHAR-P", CL_ORDINARY, cl_alpha_char_p, 1, OBJNULL}, {"ALPHANUMERICP", CL_ORDINARY, cl_alphanumericp, 1, OBJNULL}, {"AND", CL_ORDINARY, NULL, -1, OBJNULL}, {"APPEND", CL_ORDINARY, cl_append, -1, OBJNULL}, -{"APPLY", CL_ORDINARY, cl_apply, -1, OBJNULL}, -{"APROPOS", CL_ORDINARY, ECL_NAME(cl_apropos), -1, OBJNULL}, -{"APROPOS-LIST", CL_ORDINARY, ECL_NAME(cl_apropos_list), -1, OBJNULL}, -{"AREF", CL_ORDINARY, cl_aref, -1, OBJNULL}, +{"APPLY", CL_ORDINARY, cl_apply, -3, OBJNULL}, +{"APROPOS", CL_ORDINARY, ECL_NAME(cl_apropos), -2, OBJNULL}, +{"APROPOS-LIST", CL_ORDINARY, ECL_NAME(cl_apropos_list), -2, OBJNULL}, +{"AREF", CL_ORDINARY, cl_aref, -2, OBJNULL}, {"ARITHMETIC-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, {"ARITHMETIC-ERROR-OPERANDS", CL_ORDINARY, NULL, -1, OBJNULL}, {"ARITHMETIC-ERROR-OPERATION", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -195,10 +198,10 @@ cl_symbols[] = { {"ARRAY-DISPLACEMENT", CL_ORDINARY, cl_array_displacement, 1, OBJNULL}, {"ARRAY-ELEMENT-TYPE", CL_ORDINARY, cl_array_element_type, 1, OBJNULL}, {"ARRAY-HAS-FILL-POINTER-P", CL_ORDINARY, cl_array_has_fill_pointer_p, 1, OBJNULL}, -{"ARRAY-IN-BOUNDS-P", CL_ORDINARY, ECL_NAME(cl_array_in_bounds_p), -1, OBJNULL}, +{"ARRAY-IN-BOUNDS-P", CL_ORDINARY, ECL_NAME(cl_array_in_bounds_p), -2, OBJNULL}, {"ARRAY-RANK", CL_ORDINARY, cl_array_rank, 1, OBJNULL}, {"ARRAY-RANK-LIMIT", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_ARRAY_RANK_LIMIT)}, -{"ARRAY-ROW-MAJOR-INDEX", CL_ORDINARY, ECL_NAME(cl_array_row_major_index), -1, OBJNULL}, +{"ARRAY-ROW-MAJOR-INDEX", CL_ORDINARY, ECL_NAME(cl_array_row_major_index), -2, OBJNULL}, {"ARRAY-TOTAL-SIZE", CL_ORDINARY, cl_array_total_size, 1, OBJNULL}, {"ARRAY-TOTAL-SIZE-LIMIT", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_ARRAY_TOTAL_LIMIT)}, {"ARRAYP", CL_ORDINARY, cl_arrayp, 1, OBJNULL}, @@ -206,29 +209,29 @@ cl_symbols[] = { {"ASIN", CL_ORDINARY, ECL_NAME(cl_asin), 1, OBJNULL}, {"ASINH", CL_ORDINARY, ECL_NAME(cl_asinh), 1, OBJNULL}, {"ASSERT", CL_ORDINARY, NULL, -1, OBJNULL}, -{"ASSOC", CL_ORDINARY, cl_assoc, -1, OBJNULL}, -{"ASSOC-IF", CL_ORDINARY, ECL_NAME(cl_assoc_if), -1, OBJNULL}, -{"ASSOC-IF-NOT", CL_ORDINARY, ECL_NAME(cl_assoc_if_not), -1, OBJNULL}, -{"ATAN", CL_ORDINARY, cl_atan, -1, OBJNULL}, +{"ASSOC", CL_ORDINARY, cl_assoc, -3, OBJNULL}, +{"ASSOC-IF", CL_ORDINARY, ECL_NAME(cl_assoc_if), -3, OBJNULL}, +{"ASSOC-IF-NOT", CL_ORDINARY, ECL_NAME(cl_assoc_if_not), -3, OBJNULL}, +{"ATAN", CL_ORDINARY, cl_atan, -2, OBJNULL}, {"ATANH", CL_ORDINARY, ECL_NAME(cl_atanh), 1, OBJNULL}, {"ATOM", CL_ORDINARY, cl_atom, 1, OBJNULL}, {"BASE-CHAR", CL_ORDINARY, NULL, -1, OBJNULL}, {"BASE-STRING", CL_ORDINARY, NULL, -1, OBJNULL}, {"BIGNUM", CL_ORDINARY, NULL, -1, OBJNULL}, -{"BIT", CL_ORDINARY, ECL_NAME(cl_bit), -1, OBJNULL}, -{"BIT-AND", CL_ORDINARY, ECL_NAME(cl_bit_and), -1, OBJNULL}, -{"BIT-ANDC1", CL_ORDINARY, ECL_NAME(cl_bit_andc1), -1, OBJNULL}, -{"BIT-ANDC2", CL_ORDINARY, ECL_NAME(cl_bit_andc2), -1, OBJNULL}, -{"BIT-EQV", CL_ORDINARY, ECL_NAME(cl_bit_eqv), -1, OBJNULL}, -{"BIT-IOR", CL_ORDINARY, ECL_NAME(cl_bit_ior), -1, OBJNULL}, -{"BIT-NAND", CL_ORDINARY, ECL_NAME(cl_bit_nand), -1, OBJNULL}, -{"BIT-NOR", CL_ORDINARY, ECL_NAME(cl_bit_nor), -1, OBJNULL}, -{"BIT-NOT", CL_ORDINARY, ECL_NAME(cl_bit_not), -1, OBJNULL}, -{"BIT-ORC1", CL_ORDINARY, ECL_NAME(cl_bit_orc1), -1, OBJNULL}, -{"BIT-ORC2", CL_ORDINARY, ECL_NAME(cl_bit_orc2), -1, OBJNULL}, +{"BIT", CL_ORDINARY, ECL_NAME(cl_bit), -2, OBJNULL}, +{"BIT-AND", CL_ORDINARY, ECL_NAME(cl_bit_and), -3, OBJNULL}, +{"BIT-ANDC1", CL_ORDINARY, ECL_NAME(cl_bit_andc1), -3, OBJNULL}, +{"BIT-ANDC2", CL_ORDINARY, ECL_NAME(cl_bit_andc2), -3, OBJNULL}, +{"BIT-EQV", CL_ORDINARY, ECL_NAME(cl_bit_eqv), -3, OBJNULL}, +{"BIT-IOR", CL_ORDINARY, ECL_NAME(cl_bit_ior), -3, OBJNULL}, +{"BIT-NAND", CL_ORDINARY, ECL_NAME(cl_bit_nand), -3, OBJNULL}, +{"BIT-NOR", CL_ORDINARY, ECL_NAME(cl_bit_nor), -3, OBJNULL}, +{"BIT-NOT", CL_ORDINARY, ECL_NAME(cl_bit_not), -2, OBJNULL}, +{"BIT-ORC1", CL_ORDINARY, ECL_NAME(cl_bit_orc1), -3, OBJNULL}, +{"BIT-ORC2", CL_ORDINARY, ECL_NAME(cl_bit_orc2), -3, OBJNULL}, {"BIT-VECTOR", CL_ORDINARY, NULL, -1, OBJNULL}, {"BIT-VECTOR-P", CL_ORDINARY, cl_bit_vector_p, 1, OBJNULL}, -{"BIT-XOR", CL_ORDINARY, ECL_NAME(cl_bit_xor), -1, OBJNULL}, +{"BIT-XOR", CL_ORDINARY, ECL_NAME(cl_bit_xor), -3, OBJNULL}, {"BLOCK", CL_FORM, NULL, -1, OBJNULL}, {"BOOLE", CL_ORDINARY, cl_boole, 3, OBJNULL}, {"BOOLE-1", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_BOOL1)}, @@ -253,7 +256,7 @@ cl_symbols[] = { {"BREAK", CL_ORDINARY, NULL, -1, OBJNULL}, {"BROADCAST-STREAM", CL_ORDINARY, NULL, -1, OBJNULL}, {"BROADCAST-STREAM-STREAMS", CL_ORDINARY, cl_broadcast_stream_streams, 1, OBJNULL}, -{"BUTLAST", CL_ORDINARY, cl_butlast, -1, OBJNULL}, +{"BUTLAST", CL_ORDINARY, cl_butlast, -2, OBJNULL}, {"BYTE", CL_ORDINARY, ECL_NAME(cl_byte), 2, OBJNULL}, {"BYTE-POSITION", CL_ORDINARY, ECL_NAME(cl_byte_position), 1, OBJNULL}, {"BYTE-SIZE", CL_ORDINARY, ECL_NAME(cl_byte_size), 1, OBJNULL}, @@ -291,15 +294,15 @@ cl_symbols[] = { {"CDDDR", CL_ORDINARY, cl_cdddr, 1, OBJNULL}, {"CDDR", CL_ORDINARY, cl_cddr, 1, OBJNULL}, {"CDR", CL_ORDINARY, cl_cdr, 1, OBJNULL}, -{"CEILING", CL_ORDINARY, cl_ceiling, -1, OBJNULL}, +{"CEILING", CL_ORDINARY, cl_ceiling, -2, OBJNULL}, {"CELL-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, {"CELL-ERROR-NAME", CL_ORDINARY, NULL, -1, OBJNULL}, -{"CERROR", CL_ORDINARY, cl_cerror, -1, OBJNULL}, +{"CERROR", CL_ORDINARY, cl_cerror, -3, OBJNULL}, {"CHAR", CL_ORDINARY, cl_char, 2, OBJNULL}, {"CHAR-CODE", CL_ORDINARY, cl_char_code, 1, OBJNULL}, {"CHAR-CODE-LIMIT", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_CHAR_CODE_LIMIT)}, {"CHAR-DOWNCASE", CL_ORDINARY, cl_char_downcase, 1, OBJNULL}, -{"CHAR-EQUAL", CL_ORDINARY, cl_char_equal, -1, OBJNULL}, +{"CHAR-EQUAL", CL_ORDINARY, cl_char_equal, -2, OBJNULL}, {"CHAR-GREATERP", CL_ORDINARY, cl_char_greaterp, -1, OBJNULL}, {"CHAR-INT", CL_ORDINARY, cl_char_int, 1, OBJNULL}, {"CHAR-LESSP", CL_ORDINARY, cl_char_lessp, -1, OBJNULL}, @@ -311,7 +314,7 @@ cl_symbols[] = { {"CHAR/=", CL_ORDINARY, cl_charNE, -1, OBJNULL}, {"CHAR<", CL_ORDINARY, cl_charL, -1, OBJNULL}, {"CHAR<=", CL_ORDINARY, cl_charLE, -1, OBJNULL}, -{"CHAR=", CL_ORDINARY, cl_charE, -1, OBJNULL}, +{"CHAR=", CL_ORDINARY, cl_charE, -2, OBJNULL}, {"CHAR>", CL_ORDINARY, cl_charG, -1, OBJNULL}, {"CHAR>=", CL_ORDINARY, cl_charGE, -1, OBJNULL}, {"CHARACTER", CL_ORDINARY, cl_character, 1, OBJNULL}, @@ -320,7 +323,7 @@ cl_symbols[] = { {"CIS", CL_ORDINARY, ECL_NAME(cl_cis), 1, OBJNULL}, {"CLEAR-INPUT", CL_ORDINARY, cl_clear_input, -1, OBJNULL}, {"CLEAR-OUTPUT", CL_ORDINARY, cl_clear_output, -1, OBJNULL}, -{"CLOSE", CL_ORDINARY, cl_close, -1, OBJNULL}, +{"CLOSE", CL_ORDINARY, cl_close, -2, OBJNULL}, {"CLRHASH", CL_ORDINARY, cl_clrhash, 1, OBJNULL}, {"CODE-CHAR", CL_ORDINARY, cl_code_char, 1, OBJNULL}, {"COERCE", CL_ORDINARY, ECL_NAME(cl_coerce), 2, OBJNULL}, @@ -333,10 +336,10 @@ cl_symbols[] = { {"COMPILER-MACRO", CL_ORDINARY, NULL, -1, OBJNULL}, {"COMPILER-MACRO-FUNCTION", CL_ORDINARY, NULL, -1, OBJNULL}, {"COMPLEMENT", CL_ORDINARY, ECL_NAME(cl_complement), 1, OBJNULL}, -{"COMPLEX", CL_ORDINARY, cl_complex, -1, OBJNULL}, +{"COMPLEX", CL_ORDINARY, cl_complex, -2, OBJNULL}, {"COMPLEXP", CL_ORDINARY, cl_complexp, 1, OBJNULL}, {"COMPUTE-RESTARTS", CL_ORDINARY, ECL_NAME(cl_compute_restarts), -1, OBJNULL}, -{"CONCATENATE", CL_ORDINARY, ECL_NAME(cl_concatenate), -1, OBJNULL}, +{"CONCATENATE", CL_ORDINARY, ECL_NAME(cl_concatenate), -2, OBJNULL}, {"CONCATENATED-STREAM", CL_ORDINARY, NULL, -1, OBJNULL}, {"CONCATENATED-STREAM-STREAMS", CL_ORDINARY, cl_concatenated_stream_streams, 1, OBJNULL}, {"COND", CL_FORM, NULL, -1, OBJNULL}, @@ -346,7 +349,7 @@ cl_symbols[] = { {"CONS", CL_ORDINARY, cl_cons, 2, OBJNULL}, {"CONSP", CL_ORDINARY, cl_consp, 1, OBJNULL}, {"CONSTANTLY", CL_ORDINARY, ECL_NAME(cl_constantly), 1, OBJNULL}, -{"CONSTANTP", CL_ORDINARY, cl_constantp, -1, OBJNULL}, +{"CONSTANTP", CL_ORDINARY, cl_constantp, -2, OBJNULL}, {"CONTROL-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, {"COPY-ALIST", CL_ORDINARY, cl_copy_alist, 1, OBJNULL}, {"COPY-LIST", CL_ORDINARY, cl_copy_list, 1, OBJNULL}, @@ -354,13 +357,13 @@ cl_symbols[] = { {"COPY-READTABLE", CL_ORDINARY, cl_copy_readtable, -1, OBJNULL}, {"COPY-SEQ", CL_ORDINARY, cl_copy_seq, 1, OBJNULL}, {"COPY-STRUCTURE", CL_ORDINARY, cl_copy_structure, 1, OBJNULL}, -{"COPY-SYMBOL", CL_ORDINARY, cl_copy_symbol, -1, OBJNULL}, +{"COPY-SYMBOL", CL_ORDINARY, cl_copy_symbol, -2, OBJNULL}, {"COPY-TREE", CL_ORDINARY, cl_copy_tree, 1, OBJNULL}, {"COS", CL_ORDINARY, cl_cos, 1, OBJNULL}, {"COSH", CL_ORDINARY, cl_cosh, 1, OBJNULL}, -{"COUNT", CL_ORDINARY, ECL_NAME(cl_count), -1, OBJNULL}, -{"COUNT-IF", CL_ORDINARY, ECL_NAME(cl_count_if), -1, OBJNULL}, -{"COUNT-IF-NOT", CL_ORDINARY, ECL_NAME(cl_count_if_not), -1, OBJNULL}, +{"COUNT", CL_ORDINARY, ECL_NAME(cl_count), -3, OBJNULL}, +{"COUNT-IF", CL_ORDINARY, ECL_NAME(cl_count_if), -3, OBJNULL}, +{"COUNT-IF-NOT", CL_ORDINARY, ECL_NAME(cl_count_if_not), -3, OBJNULL}, {"CTYPECASE", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEBUG", CL_ORDINARY, NULL, -1, OBJNULL}, {"DECF", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -368,7 +371,7 @@ cl_symbols[] = { {"DECLARATION", CL_ORDINARY, NULL, -1, OBJNULL}, {"DECLARE", CL_ORDINARY, NULL, -1, OBJNULL}, {"DECODE-FLOAT", CL_ORDINARY, cl_decode_float, 1, OBJNULL}, -{"DECODE-UNIVERSAL-TIME", CL_ORDINARY, ECL_NAME(cl_decode_universal_time), -1, OBJNULL}, +{"DECODE-UNIVERSAL-TIME", CL_ORDINARY, ECL_NAME(cl_decode_universal_time), -2, OBJNULL}, {"DEFCONSTANT", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEFINE-CONDITION", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEFINE-COMPILER-MACRO", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -383,19 +386,19 @@ cl_symbols[] = { {"DEFTYPE", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEFUN", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEFVAR", CL_ORDINARY, NULL, -1, OBJNULL}, -{"DELETE", CL_ORDINARY, ECL_NAME(cl_delete), -1, OBJNULL}, -{"DELETE-DUPLICATES", CL_ORDINARY, ECL_NAME(cl_delete_duplicates), -1, OBJNULL}, +{"DELETE", CL_ORDINARY, ECL_NAME(cl_delete), -3, OBJNULL}, +{"DELETE-DUPLICATES", CL_ORDINARY, ECL_NAME(cl_delete_duplicates), -2, OBJNULL}, {"DELETE-FILE", CL_ORDINARY, cl_delete_file, 1, OBJNULL}, -{"DELETE-IF", CL_ORDINARY, ECL_NAME(cl_delete_if), -1, OBJNULL}, -{"DELETE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_delete_if_not), -1, OBJNULL}, +{"DELETE-IF", CL_ORDINARY, ECL_NAME(cl_delete_if), -3, OBJNULL}, +{"DELETE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_delete_if_not), -3, OBJNULL}, {"DELETE-PACKAGE", CL_ORDINARY, cl_delete_package, 1, OBJNULL}, {"DENOMINATOR", CL_ORDINARY, cl_denominator, 1, OBJNULL}, {"DEPOSIT-FIELD", CL_ORDINARY, ECL_NAME(cl_deposit_field), 3, OBJNULL}, -{"DESCRIBE", CL_ORDINARY, ECL_NAME(cl_describe), -1, OBJNULL}, +{"DESCRIBE", CL_ORDINARY, ECL_NAME(cl_describe), -2, OBJNULL}, {"DESTRUCTURING-BIND", CL_ORDINARY, NULL, -1, OBJNULL}, -{"DIGIT-CHAR", CL_ORDINARY, cl_digit_char, -1, OBJNULL}, -{"DIGIT-CHAR-P", CL_ORDINARY, cl_digit_char_p, -1, OBJNULL}, -{"DIRECTORY", CL_ORDINARY, cl_directory, -1, OBJNULL}, +{"DIGIT-CHAR", CL_ORDINARY, cl_digit_char, -2, OBJNULL}, +{"DIGIT-CHAR-P", CL_ORDINARY, cl_digit_char_p, -2, OBJNULL}, +{"DIRECTORY", CL_ORDINARY, cl_directory, -2, OBJNULL}, {"DIRECTORY-NAMESTRING", CL_ORDINARY, cl_directory_namestring, 1, OBJNULL}, {"DISASSEMBLE", CL_ORDINARY, NULL, -1, OBJNULL}, {"DIVISION-BY-ZERO", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -420,73 +423,73 @@ cl_symbols[] = { {"ED", CL_ORDINARY, NULL, -1, OBJNULL}, {"EIGHTH", CL_ORDINARY, cl_eighth, 1, OBJNULL}, {"ELT", CL_ORDINARY, cl_elt, 2, OBJNULL}, -{"ENCODE-UNIVERSAL-TIME", CL_ORDINARY, ECL_NAME(cl_encode_universal_time), -1, OBJNULL}, +{"ENCODE-UNIVERSAL-TIME", CL_ORDINARY, ECL_NAME(cl_encode_universal_time), -7, OBJNULL}, {"END-OF-FILE", CL_ORDINARY, NULL, -1, OBJNULL}, {"ENDP", CL_ORDINARY, cl_endp, 1, OBJNULL}, -{"ENOUGH-NAMESTRING", CL_ORDINARY, cl_enough_namestring, -1, OBJNULL}, -{"ENSURE-DIRECTORIES-EXIST", CL_ORDINARY, ECL_NAME(cl_ensure_directories_exist), -1, OBJNULL}, +{"ENOUGH-NAMESTRING", CL_ORDINARY, cl_enough_namestring, -2, OBJNULL}, +{"ENSURE-DIRECTORIES-EXIST", CL_ORDINARY, ECL_NAME(cl_ensure_directories_exist), -2, OBJNULL}, {"EQ", CL_ORDINARY, cl_eq, 2, OBJNULL}, {"EQL", CL_ORDINARY, cl_eql, 2, OBJNULL}, {"EQUAL", CL_ORDINARY, cl_equal, 2, OBJNULL}, {"EQUALP", CL_ORDINARY, cl_equalp, 2, OBJNULL}, -{"ERROR", CL_ORDINARY, cl_error, -1, OBJNULL}, +{"ERROR", CL_ORDINARY, cl_error, -2, OBJNULL}, {"ETYPECASE", CL_ORDINARY, NULL, -1, OBJNULL}, {"EVAL", CL_ORDINARY, cl_eval, 1, OBJNULL}, {"EVAL-WHEN", CL_FORM, NULL, -1, OBJNULL}, {"EVENP", CL_ORDINARY, cl_evenp, 1, OBJNULL}, -{"EVERY", CL_ORDINARY, ECL_NAME(cl_every), -1, OBJNULL}, +{"EVERY", CL_ORDINARY, ECL_NAME(cl_every), -3, OBJNULL}, {"EXP", CL_ORDINARY, cl_exp, 1, OBJNULL}, -{"EXPORT", CL_ORDINARY, cl_export, -1, OBJNULL}, +{"EXPORT", CL_ORDINARY, cl_export, -2, OBJNULL}, {"EXPT", CL_ORDINARY, cl_expt, 2, OBJNULL}, {"EXTENDED-CHAR", CL_ORDINARY, NULL, -1, OBJNULL}, {"FBOUNDP", CL_ORDINARY, cl_fboundp, 1, OBJNULL}, -{"FCEILING", CL_ORDINARY, ECL_NAME(cl_fceiling), -1, OBJNULL}, +{"FCEILING", CL_ORDINARY, ECL_NAME(cl_fceiling), -2, OBJNULL}, {"FDEFINITION", CL_ORDINARY, cl_fdefinition, 1, OBJNULL}, -{"FFLOOR", CL_ORDINARY, ECL_NAME(cl_ffloor), -1, OBJNULL}, +{"FFLOOR", CL_ORDINARY, ECL_NAME(cl_ffloor), -2, OBJNULL}, {"FIFTH", CL_ORDINARY, cl_fifth, 1, OBJNULL}, {"FILE-AUTHOR", CL_ORDINARY, cl_file_author, 1, OBJNULL}, {"FILE-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, {"FILE-ERROR-PATHNAME", CL_ORDINARY, NULL, -1, OBJNULL}, {"FILE-LENGTH", CL_ORDINARY, cl_file_length, 1, OBJNULL}, {"FILE-NAMESTRING", CL_ORDINARY, cl_file_namestring, 1, OBJNULL}, -{"FILE-POSITION", CL_ORDINARY, cl_file_position, -1, OBJNULL}, +{"FILE-POSITION", CL_ORDINARY, cl_file_position, -2, OBJNULL}, {"FILE-STREAM", CL_ORDINARY, NULL, -1, OBJNULL}, {"FILE-STRING-LENGTH", CL_ORDINARY, cl_file_string_length, 2, OBJNULL}, {"FILE-WRITE-DATE", CL_ORDINARY, cl_file_write_date, 1, OBJNULL}, -{"FILL", CL_ORDINARY, ECL_NAME(cl_fill), -1, OBJNULL}, +{"FILL", CL_ORDINARY, ECL_NAME(cl_fill), -3, OBJNULL}, {"FILL-POINTER", CL_ORDINARY, cl_fill_pointer, 1, OBJNULL}, -{"FIND", CL_ORDINARY, ECL_NAME(cl_find), -1, OBJNULL}, +{"FIND", CL_ORDINARY, ECL_NAME(cl_find), -3, OBJNULL}, {"FIND-ALL-SYMBOLS", CL_ORDINARY, ECL_NAME(cl_find_all_symbols), 1, OBJNULL}, -{"FIND-IF", CL_ORDINARY, ECL_NAME(cl_find_if), -1, OBJNULL}, -{"FIND-IF-NOT", CL_ORDINARY, ECL_NAME(cl_find_if_not), -1, OBJNULL}, +{"FIND-IF", CL_ORDINARY, ECL_NAME(cl_find_if), -3, OBJNULL}, +{"FIND-IF-NOT", CL_ORDINARY, ECL_NAME(cl_find_if_not), -3, OBJNULL}, {"FIND-PACKAGE", CL_ORDINARY, cl_find_package, 1, OBJNULL}, -{"FIND-RESTART", CL_ORDINARY, ECL_NAME(cl_find_restart), -1, OBJNULL}, -{"FIND-SYMBOL", CL_ORDINARY, cl_find_symbol, -1, OBJNULL}, +{"FIND-RESTART", CL_ORDINARY, ECL_NAME(cl_find_restart), -2, OBJNULL}, +{"FIND-SYMBOL", CL_ORDINARY, cl_find_symbol, -2, OBJNULL}, {"FINISH-OUTPUT", CL_ORDINARY, cl_finish_output, -1, OBJNULL}, {"FIRST", CL_ORDINARY, cl_car, 1, OBJNULL}, {"FIXNUM", CL_ORDINARY, NULL, -1, OBJNULL}, {"FLET", CL_FORM, NULL, -1, OBJNULL}, -{"FLOAT", CL_ORDINARY, cl_float, -1, OBJNULL}, +{"FLOAT", CL_ORDINARY, cl_float, -2, OBJNULL}, {"FLOAT-DIGITS", CL_ORDINARY, cl_float_digits, 1, OBJNULL}, {"FLOAT-PRECISION", CL_ORDINARY, cl_float_precision, 1, OBJNULL}, {"FLOAT-RADIX", CL_ORDINARY, cl_float_radix, 1, OBJNULL}, -{"FLOAT-SIGN", CL_ORDINARY, cl_float_sign, -1, OBJNULL}, +{"FLOAT-SIGN", CL_ORDINARY, cl_float_sign, -2, OBJNULL}, {"FLOATING-POINT-INEXACT", CL_ORDINARY, NULL, -1, OBJNULL}, {"FLOATING-POINT-INVALID-OPERATION", CL_ORDINARY, NULL, -1, OBJNULL}, {"FLOATING-POINT-OVERFLOW", CL_ORDINARY, NULL, -1, OBJNULL}, {"FLOATING-POINT-UNDERFLOW", CL_ORDINARY, NULL, -1, OBJNULL}, {"FLOATP", CL_ORDINARY, cl_floatp, 1, OBJNULL}, -{"FLOOR", CL_ORDINARY, cl_floor, -1, OBJNULL}, +{"FLOOR", CL_ORDINARY, cl_floor, -2, OBJNULL}, {"FMAKUNBOUND", CL_ORDINARY, cl_fmakunbound, 1, OBJNULL}, {"FORCE-OUTPUT", CL_ORDINARY, cl_force_output, -1, OBJNULL}, -{"FORMAT", CL_ORDINARY, cl_format, -1, OBJNULL}, +{"FORMAT", CL_ORDINARY, cl_format, -3, OBJNULL}, {"FORMATTER", CL_ORDINARY, NULL, -1, OBJNULL}, {"FOURTH", CL_ORDINARY, cl_cadddr, 1, OBJNULL}, {"FRESH-LINE", CL_ORDINARY, cl_fresh_line, -1, OBJNULL}, -{"FROUND", CL_ORDINARY, ECL_NAME(cl_fround), -1, OBJNULL}, -{"FTRUNCATE", CL_ORDINARY, ECL_NAME(cl_ftruncate), -1, OBJNULL}, +{"FROUND", CL_ORDINARY, ECL_NAME(cl_fround), -2, OBJNULL}, +{"FTRUNCATE", CL_ORDINARY, ECL_NAME(cl_ftruncate), -2, OBJNULL}, {"FTYPE", CL_ORDINARY, NULL, -1, OBJNULL}, -{"FUNCALL", CL_ORDINARY, cl_funcall, -1, OBJNULL}, +{"FUNCALL", CL_ORDINARY, cl_funcall, -2, OBJNULL}, {"FUNCTION-LAMBDA-EXPRESSION", CL_ORDINARY, cl_function_lambda_expression, 1, OBJNULL}, {"FUNCTION", CL_FORM, NULL, -1, OBJNULL}, {"FUNCTION-KEYWORDS", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -494,18 +497,18 @@ cl_symbols[] = { {"GCD", CL_ORDINARY, cl_gcd, -1, OBJNULL}, {"GENSYM", CL_ORDINARY, cl_gensym, -1, OBJNULL}, {"GENTEMP", CL_ORDINARY, cl_gentemp, -1, OBJNULL}, -{"GET", CL_ORDINARY, cl_get, -1, OBJNULL}, +{"GET", CL_ORDINARY, cl_get, -3, OBJNULL}, {"GET-DECODED-TIME", CL_ORDINARY, ECL_NAME(cl_get_decoded_time), 0, OBJNULL}, -{"GET-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_get_dispatch_macro_character, -1, OBJNULL}, +{"GET-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_get_dispatch_macro_character, -3, OBJNULL}, {"GET-INTERNAL-REAL-TIME", CL_ORDINARY, cl_get_internal_real_time, 0, OBJNULL}, {"GET-INTERNAL-RUN-TIME", CL_ORDINARY, cl_get_internal_run_time, 0, OBJNULL}, -{"GET-MACRO-CHARACTER", CL_ORDINARY, cl_get_macro_character, -1, OBJNULL}, +{"GET-MACRO-CHARACTER", CL_ORDINARY, cl_get_macro_character, -2, OBJNULL}, {"GET-OUTPUT-STREAM-STRING", CL_ORDINARY, cl_get_output_stream_string, 1, OBJNULL}, {"GET-PROPERTIES", CL_ORDINARY, cl_get_properties, 2, OBJNULL}, {"GET-SETF-EXPANSION", CL_ORDINARY, NULL, -1, OBJNULL}, {"GET-UNIVERSAL-TIME", CL_ORDINARY, cl_get_universal_time, 0, OBJNULL}, -{"GETF", CL_ORDINARY, cl_getf, -1, OBJNULL}, -{"GETHASH", CL_ORDINARY, cl_gethash, -1, OBJNULL}, +{"GETF", CL_ORDINARY, cl_getf, -3, OBJNULL}, +{"GETHASH", CL_ORDINARY, cl_gethash, -3, OBJNULL}, {"GO", CL_FORM, NULL, -1, OBJNULL}, {"GRAPHIC-CHAR-P", CL_ORDINARY, cl_graphic_char_p, 1, OBJNULL}, {"HANDLER-CASE", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -523,7 +526,7 @@ cl_symbols[] = { {"IGNORE", CL_ORDINARY, NULL, -1, OBJNULL}, {"IGNORE-ERRORS", CL_ORDINARY, NULL, -1, OBJNULL}, {"IMAGPART", CL_ORDINARY, cl_imagpart, 1, OBJNULL}, -{"IMPORT", CL_ORDINARY, cl_import, -1, OBJNULL}, +{"IMPORT", CL_ORDINARY, cl_import, -2, OBJNULL}, {"IN-PACKAGE", CL_ORDINARY, NULL, -1, OBJNULL}, {"INCF", CL_ORDINARY, NULL, -1, OBJNULL}, {"INLINE", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -534,11 +537,11 @@ cl_symbols[] = { {"INTEGER-LENGTH", CL_ORDINARY, cl_integer_length, 1, OBJNULL}, {"INTEGERP", CL_ORDINARY, cl_integerp, 1, OBJNULL}, {"INTERACTIVE-STREAM-P", CL_ORDINARY, cl_interactive_stream_p, 1, OBJNULL}, -{"INTERN", CL_ORDINARY, cl_intern, -1, OBJNULL}, +{"INTERN", CL_ORDINARY, cl_intern, -2, OBJNULL}, {"INTERNAL-TIME-UNITS-PER-SECOND", CL_CONSTANT, NULL, -1, OBJNULL}, -{"INTERSECTION", CL_ORDINARY, ECL_NAME(cl_intersection), -1, OBJNULL}, +{"INTERSECTION", CL_ORDINARY, ECL_NAME(cl_intersection), -3, OBJNULL}, {"INVOKE-DEBUGGER", CL_ORDINARY, NULL, -1, OBJNULL}, -{"INVOKE-RESTART", CL_ORDINARY, ECL_NAME(cl_invoke_restart), -1, OBJNULL}, +{"INVOKE-RESTART", CL_ORDINARY, ECL_NAME(cl_invoke_restart), -2, OBJNULL}, {"INVOKE-RESTART-INTERACTIVELY", CL_ORDINARY, ECL_NAME(cl_invoke_restart_interactively), 1, OBJNULL}, {"ISQRT", CL_ORDINARY, ECL_NAME(cl_isqrt), 1, OBJNULL}, {"KEYWORD", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -547,7 +550,7 @@ cl_symbols[] = { {"LAMBDA", CL_FORM, NULL, -1, OBJNULL}, {"LAMBDA-LIST-KEYWORDS", CL_CONSTANT, NULL, -1, OBJNULL}, {"LAMBDA-PARAMETERS-LIMIT", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_LAMBDA_PARAMETERS_LIMIT)}, -{"LAST", CL_ORDINARY, cl_last, -1, OBJNULL}, +{"LAST", CL_ORDINARY, cl_last, -2, OBJNULL}, {"LCM", CL_ORDINARY, cl_lcm, -1, OBJNULL}, {"LDB", CL_ORDINARY, ECL_NAME(cl_ldb), 2, OBJNULL}, {"LDB-TEST", CL_ORDINARY, ECL_NAME(cl_ldb_test), 2, OBJNULL}, @@ -579,11 +582,11 @@ cl_symbols[] = { {"LIST-LENGTH", CL_ORDINARY, cl_list_length, 1, OBJNULL}, {"LISTEN", CL_ORDINARY, cl_listen, -1, OBJNULL}, {"LISTP", CL_ORDINARY, cl_listp, 1, OBJNULL}, -{"LOAD", CL_ORDINARY, cl_load, -1, OBJNULL}, +{"LOAD", CL_ORDINARY, cl_load, -2, OBJNULL}, {"LOAD-LOGICAL-PATHNAME-TRANSLATIONS", CL_ORDINARY, ECL_NAME(cl_load_logical_pathname_translations), 1, OBJNULL}, {"LOAD-TIME-VALUE", CL_FORM, NULL, -1, OBJNULL}, {"LOCALLY", CL_FORM, NULL, -1, OBJNULL}, -{"LOG", CL_ORDINARY, cl_log, -1, OBJNULL}, +{"LOG", CL_ORDINARY, cl_log, -2, OBJNULL}, {"LOGAND", CL_ORDINARY, cl_logand, -1, OBJNULL}, {"LOGANDC1", CL_ORDINARY, cl_logandc1, 2, OBJNULL}, {"LOGANDC2", CL_ORDINARY, cl_logandc2, 2, OBJNULL}, @@ -610,48 +613,48 @@ cl_symbols[] = { {"MACHINE-INSTANCE", CL_ORDINARY, ECL_NAME(cl_machine_instance), 0, OBJNULL}, {"MACHINE-TYPE", CL_ORDINARY, ECL_NAME(cl_machine_type), 0, OBJNULL}, {"MACHINE-VERSION", CL_ORDINARY, ECL_NAME(cl_machine_version), 0, OBJNULL}, -{"MACRO-FUNCTION", CL_ORDINARY, cl_macro_function, -1, OBJNULL}, -{"MACROEXPAND", CL_ORDINARY, cl_macroexpand, -1, OBJNULL}, -{"MACROEXPAND-1", CL_ORDINARY, cl_macroexpand_1, -1, OBJNULL}, +{"MACRO-FUNCTION", CL_ORDINARY, cl_macro_function, -2, OBJNULL}, +{"MACROEXPAND", CL_ORDINARY, cl_macroexpand, -2, OBJNULL}, +{"MACROEXPAND-1", CL_ORDINARY, cl_macroexpand_1, -2, OBJNULL}, {"MACROLET", CL_FORM, NULL, -1, OBJNULL}, -{"MAKE-ARRAY", CL_ORDINARY, ECL_NAME(cl_make_array), -1, OBJNULL}, +{"MAKE-ARRAY", CL_ORDINARY, ECL_NAME(cl_make_array), -2, OBJNULL}, {"MAKE-BROADCAST-STREAM", CL_ORDINARY, cl_make_broadcast_stream, -1, OBJNULL}, -{"MAKE-CONDITION", CL_ORDINARY, ECL_NAME(cl_make_condition), -1, OBJNULL}, +{"MAKE-CONDITION", CL_ORDINARY, ECL_NAME(cl_make_condition), -2, OBJNULL}, {"MAKE-CONCATENATED-STREAM", CL_ORDINARY, cl_make_concatenated_stream, -1, OBJNULL}, -{"MAKE-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_make_dispatch_macro_character, -1, OBJNULL}, +{"MAKE-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_make_dispatch_macro_character, -2, OBJNULL}, {"MAKE-ECHO-STREAM", CL_ORDINARY, cl_make_echo_stream, 2, OBJNULL}, {"MAKE-HASH-TABLE", CL_ORDINARY, cl_make_hash_table, -1, OBJNULL}, -{"MAKE-LIST", CL_ORDINARY, cl_make_list, -1, OBJNULL}, -{"MAKE-PACKAGE", CL_ORDINARY, cl_make_package, -1, OBJNULL}, +{"MAKE-LIST", CL_ORDINARY, cl_make_list, -2, OBJNULL}, +{"MAKE-PACKAGE", CL_ORDINARY, cl_make_package, -2, OBJNULL}, {"MAKE-PATHNAME", CL_ORDINARY, cl_make_pathname, -1, OBJNULL}, {"MAKE-RANDOM-STATE", CL_ORDINARY, cl_make_random_state, -1, OBJNULL}, -{"MAKE-SEQUENCE", CL_ORDINARY, ECL_NAME(cl_make_sequence), -1, OBJNULL}, -{"MAKE-STRING", CL_ORDINARY, cl_make_string, -1, OBJNULL}, -{"MAKE-STRING-INPUT-STREAM", CL_ORDINARY, cl_make_string_input_stream, -1, OBJNULL}, +{"MAKE-SEQUENCE", CL_ORDINARY, ECL_NAME(cl_make_sequence), -3, OBJNULL}, +{"MAKE-STRING", CL_ORDINARY, cl_make_string, -2, OBJNULL}, +{"MAKE-STRING-INPUT-STREAM", CL_ORDINARY, cl_make_string_input_stream, -2, OBJNULL}, {"MAKE-STRING-OUTPUT-STREAM", CL_ORDINARY, cl_make_string_output_stream, -1, OBJNULL}, {"MAKE-SYMBOL", CL_ORDINARY, cl_make_symbol, 1, OBJNULL}, {"MAKE-SYNONYM-STREAM", CL_ORDINARY, cl_make_synonym_stream, 1, OBJNULL}, {"MAKE-TWO-WAY-STREAM", CL_ORDINARY, cl_make_two_way_stream, 2, OBJNULL}, {"MAKUNBOUND", CL_ORDINARY, cl_makunbound, 1, OBJNULL}, -{"MAP", CL_ORDINARY, ECL_NAME(cl_map), -1, OBJNULL}, -{"MAP-INTO", CL_ORDINARY, ECL_NAME(cl_map_into), -1, OBJNULL}, -{"MAPC", CL_ORDINARY, cl_mapc, -1, OBJNULL}, -{"MAPCAN", CL_ORDINARY, cl_mapcan, -1, OBJNULL}, -{"MAPCAR", CL_ORDINARY, cl_mapcar, -1, OBJNULL}, -{"MAPCON", CL_ORDINARY, cl_mapcon, -1, OBJNULL}, +{"MAP", CL_ORDINARY, ECL_NAME(cl_map), -4, OBJNULL}, +{"MAP-INTO", CL_ORDINARY, ECL_NAME(cl_map_into), -3, OBJNULL}, +{"MAPC", CL_ORDINARY, cl_mapc, -2, OBJNULL}, +{"MAPCAN", CL_ORDINARY, cl_mapcan, -2, OBJNULL}, +{"MAPCAR", CL_ORDINARY, cl_mapcar, -2, OBJNULL}, +{"MAPCON", CL_ORDINARY, cl_mapcon, -2, OBJNULL}, {"MAPHASH", CL_ORDINARY, cl_maphash, 2, OBJNULL}, -{"MAPL", CL_ORDINARY, cl_mapl, -1, OBJNULL}, -{"MAPLIST", CL_ORDINARY, cl_maplist, -1, OBJNULL}, +{"MAPL", CL_ORDINARY, cl_mapl, -2, OBJNULL}, +{"MAPLIST", CL_ORDINARY, cl_maplist, -2, OBJNULL}, {"MASK-FIELD", CL_ORDINARY, ECL_NAME(cl_mask_field), 2, OBJNULL}, -{"MAX", CL_ORDINARY, cl_max, -1, OBJNULL}, -{"MEMBER", CL_ORDINARY, cl_member, -1, OBJNULL}, -{"MEMBER-IF", CL_ORDINARY, ECL_NAME(cl_member_if), -1, OBJNULL}, -{"MEMBER-IF-NOT", CL_ORDINARY, ECL_NAME(cl_member_if_not), -1, OBJNULL}, -{"MERGE", CL_ORDINARY, ECL_NAME(cl_merge), -1, OBJNULL}, -{"MERGE-PATHNAMES", CL_ORDINARY, cl_merge_pathnames, -1, OBJNULL}, -{"MIN", CL_ORDINARY, cl_min, -1, OBJNULL}, +{"MAX", CL_ORDINARY, cl_max, -2, OBJNULL}, +{"MEMBER", CL_ORDINARY, cl_member, -3, OBJNULL}, +{"MEMBER-IF", CL_ORDINARY, ECL_NAME(cl_member_if), -3, OBJNULL}, +{"MEMBER-IF-NOT", CL_ORDINARY, ECL_NAME(cl_member_if_not), -3, OBJNULL}, +{"MERGE", CL_ORDINARY, ECL_NAME(cl_merge), -5, OBJNULL}, +{"MERGE-PATHNAMES", CL_ORDINARY, cl_merge_pathnames, -2, OBJNULL}, +{"MIN", CL_ORDINARY, cl_min, -2, OBJNULL}, {"MINUSP", CL_ORDINARY, cl_minusp, 1, OBJNULL}, -{"MISMATCH", CL_ORDINARY, ECL_NAME(cl_mismatch), -1, OBJNULL}, +{"MISMATCH", CL_ORDINARY, ECL_NAME(cl_mismatch), -3, OBJNULL}, {"MOD", CL_ORDINARY, cl_mod, 2, OBJNULL}, {"MOST-NEGATIVE-DOUBLE-FLOAT", CL_CONSTANT, NULL, -1, ECL_MOST_NEGATIVE_DOUBLE_FLOAT}, {"MOST-NEGATIVE-FIXNUM", CL_CONSTANT, NULL, -1, ecl_make_fixnum(MOST_NEGATIVE_FIXNUM)}, @@ -672,28 +675,28 @@ cl_symbols[] = { {"MULTIPLE-VALUES-LIMIT", CL_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_MULTIPLE_VALUES_LIMIT)}, {"NAME-CHAR", CL_ORDINARY, cl_name_char, 1, OBJNULL}, {"NAMESTRING", CL_ORDINARY, cl_namestring, 1, OBJNULL}, -{"NBUTLAST", CL_ORDINARY, cl_nbutlast, -1, OBJNULL}, +{"NBUTLAST", CL_ORDINARY, cl_nbutlast, -2, OBJNULL}, {"NCONC", CL_ORDINARY, cl_nconc, -1, OBJNULL}, -{"NINTERSECTION", CL_ORDINARY, ECL_NAME(cl_nintersection), -1, OBJNULL}, +{"NINTERSECTION", CL_ORDINARY, ECL_NAME(cl_nintersection), -3, OBJNULL}, {"NINTH", CL_ORDINARY, cl_ninth, 1, OBJNULL}, {"NOT", CL_ORDINARY, cl_not, 1, OBJNULL}, -{"NOTANY", CL_ORDINARY, ECL_NAME(cl_notany), -1, OBJNULL}, -{"NOTEVERY", CL_ORDINARY, ECL_NAME(cl_notevery), -1, OBJNULL}, +{"NOTANY", CL_ORDINARY, ECL_NAME(cl_notany), -3, OBJNULL}, +{"NOTEVERY", CL_ORDINARY, ECL_NAME(cl_notevery), -3, OBJNULL}, {"NOTINLINE", CL_ORDINARY, NULL, -1, OBJNULL}, {"NRECONC", CL_ORDINARY, cl_nreconc, 2, OBJNULL}, {"NREVERSE", CL_ORDINARY, cl_nreverse, 1, OBJNULL}, -{"NSET-DIFFERENCE", CL_ORDINARY, ECL_NAME(cl_nset_difference), -1, OBJNULL}, -{"NSET-EXCLUSIVE-OR", CL_ORDINARY, ECL_NAME(cl_nset_exclusive_or), -1, OBJNULL}, +{"NSET-DIFFERENCE", CL_ORDINARY, ECL_NAME(cl_nset_difference), -3, OBJNULL}, +{"NSET-EXCLUSIVE-OR", CL_ORDINARY, ECL_NAME(cl_nset_exclusive_or), -3, OBJNULL}, {"NSTRING-CAPITALIZE", CL_ORDINARY, cl_nstring_capitalize, -1, OBJNULL}, {"NSTRING-DOWNCASE", CL_ORDINARY, cl_nstring_downcase, -1, OBJNULL}, {"NSTRING-UPCASE", CL_ORDINARY, cl_nstring_upcase, -1, OBJNULL}, -{"NSUBLIS", CL_ORDINARY, cl_nsublis, -1, OBJNULL}, -{"NSUBST", CL_ORDINARY, cl_nsubst, -1, OBJNULL}, -{"NSUBST-IF", CL_ORDINARY, ECL_NAME(cl_nsubst_if), -1, OBJNULL}, -{"NSUBST-IF-NOT", CL_ORDINARY, ECL_NAME(cl_nsubst_if_not), -1, OBJNULL}, -{"NSUBSTITUTE", CL_ORDINARY, ECL_NAME(cl_nsubstitute), -1, OBJNULL}, -{"NSUBSTITUTE-IF", CL_ORDINARY, ECL_NAME(cl_nsubstitute_if), -1, OBJNULL}, -{"NSUBSTITUTE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_nsubstitute_if_not), -1, OBJNULL}, +{"NSUBLIS", CL_ORDINARY, cl_nsublis, -3, OBJNULL}, +{"NSUBST", CL_ORDINARY, cl_nsubst, -4, OBJNULL}, +{"NSUBST-IF", CL_ORDINARY, ECL_NAME(cl_nsubst_if), -4, OBJNULL}, +{"NSUBST-IF-NOT", CL_ORDINARY, ECL_NAME(cl_nsubst_if_not), -4, OBJNULL}, +{"NSUBSTITUTE", CL_ORDINARY, ECL_NAME(cl_nsubstitute), -4, OBJNULL}, +{"NSUBSTITUTE-IF", CL_ORDINARY, ECL_NAME(cl_nsubstitute_if), -4, OBJNULL}, +{"NSUBSTITUTE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_nsubstitute_if_not), -4, OBJNULL}, {"NTH", CL_ORDINARY, cl_nth, 2, OBJNULL}, {"NTH-VALUE", CL_FORM, NULL, -1, OBJNULL}, {"NTHCDR", CL_ORDINARY, cl_nthcdr, 2, OBJNULL}, @@ -701,9 +704,9 @@ cl_symbols[] = { {"NUMBER", CL_ORDINARY, NULL, -1, OBJNULL}, {"NUMBERP", CL_ORDINARY, cl_numberp, 1, OBJNULL}, {"NUMERATOR", CL_ORDINARY, cl_numerator, 1, OBJNULL}, -{"NUNION", CL_ORDINARY, ECL_NAME(cl_nunion), -1, OBJNULL}, +{"NUNION", CL_ORDINARY, ECL_NAME(cl_nunion), -3, OBJNULL}, {"ODDP", CL_ORDINARY, cl_oddp, 1, OBJNULL}, -{"OPEN", CL_ORDINARY, cl_open, -1, OBJNULL}, +{"OPEN", CL_ORDINARY, cl_open, -2, OBJNULL}, {"OPEN-STREAM-P", CL_ORDINARY, cl_open_stream_p, 1, OBJNULL}, {"OPTIMIZE", CL_ORDINARY, NULL, -1, OBJNULL}, {"OR", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -718,17 +721,17 @@ cl_symbols[] = { {"PACKAGE-USE-LIST", CL_ORDINARY, cl_package_use_list, 1, OBJNULL}, {"PACKAGE-USED-BY-LIST", CL_ORDINARY, cl_package_used_by_list, 1, OBJNULL}, {"PACKAGEP", CL_ORDINARY, cl_packagep, 1, OBJNULL}, -{"PAIRLIS", CL_ORDINARY, cl_pairlis, -1, OBJNULL}, +{"PAIRLIS", CL_ORDINARY, cl_pairlis, -3, OBJNULL}, {"PARSE-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, -{"PARSE-INTEGER", CL_ORDINARY, cl_parse_integer, -1, OBJNULL}, -{"PARSE-NAMESTRING", CL_ORDINARY, cl_parse_namestring, -1, OBJNULL}, +{"PARSE-INTEGER", CL_ORDINARY, cl_parse_integer, -2, OBJNULL}, +{"PARSE-NAMESTRING", CL_ORDINARY, cl_parse_namestring, -2, OBJNULL}, {"PATHNAME", CL_ORDINARY, cl_pathname, 1, OBJNULL}, -{"PATHNAME-DEVICE", CL_ORDINARY, cl_pathname_device, -1, OBJNULL}, -{"PATHNAME-DIRECTORY", CL_ORDINARY, cl_pathname_directory, -1, OBJNULL}, -{"PATHNAME-HOST", CL_ORDINARY, cl_pathname_host, -1, OBJNULL}, +{"PATHNAME-DEVICE", CL_ORDINARY, cl_pathname_device, -2, OBJNULL}, +{"PATHNAME-DIRECTORY", CL_ORDINARY, cl_pathname_directory, -2, OBJNULL}, +{"PATHNAME-HOST", CL_ORDINARY, cl_pathname_host, -2, OBJNULL}, {"PATHNAME-MATCH-P", CL_ORDINARY, cl_pathname_match_p, 2, OBJNULL}, -{"PATHNAME-NAME", CL_ORDINARY, cl_pathname_name, -1, OBJNULL}, -{"PATHNAME-TYPE", CL_ORDINARY, cl_pathname_type, -1, OBJNULL}, +{"PATHNAME-NAME", CL_ORDINARY, cl_pathname_name, -2, OBJNULL}, +{"PATHNAME-TYPE", CL_ORDINARY, cl_pathname_type, -2, OBJNULL}, {"PATHNAME-VERSION", CL_ORDINARY, cl_pathname_version, 1, OBJNULL}, {"PATHNAMEP", CL_ORDINARY, cl_pathnamep, 1, OBJNULL}, {"PEEK-CHAR", CL_ORDINARY, cl_peek_char, -1, OBJNULL}, @@ -736,25 +739,25 @@ cl_symbols[] = { {"PI", CL_CONSTANT, NULL, -1, ECL_PI}, {"PLUSP", CL_ORDINARY, cl_plusp, 1, OBJNULL}, {"POP", CL_ORDINARY, NULL, -1, OBJNULL}, -{"POSITION", CL_ORDINARY, ECL_NAME(cl_position), -1, OBJNULL}, -{"POSITION-IF", CL_ORDINARY, ECL_NAME(cl_position_if), -1, OBJNULL}, -{"POSITION-IF-NOT", CL_ORDINARY, ECL_NAME(cl_position_if_not), -1, OBJNULL}, -{"PPRINT", CL_ORDINARY, cl_pprint, -1, OBJNULL}, -{"PPRINT-DISPATCH", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_dispatch), -1, OBJNULL}, +{"POSITION", CL_ORDINARY, ECL_NAME(cl_position), -3, OBJNULL}, +{"POSITION-IF", CL_ORDINARY, ECL_NAME(cl_position_if), -3, OBJNULL}, +{"POSITION-IF-NOT", CL_ORDINARY, ECL_NAME(cl_position_if_not), -3, OBJNULL}, +{"PPRINT", CL_ORDINARY, cl_pprint, -2, OBJNULL}, +{"PPRINT-DISPATCH", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_dispatch), -2, OBJNULL}, {"PPRINT-EXIT-IF-LIST-EXHAUSTED", CL_ORDINARY, NULL, -1, OBJNULL}, -{"PPRINT-FILL", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_fill), -1, OBJNULL}, -{"PPRINT-INDENT", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_indent), -1, OBJNULL}, -{"PPRINT-LINEAR", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_linear), -1, OBJNULL}, +{"PPRINT-FILL", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_fill), -3, OBJNULL}, +{"PPRINT-INDENT", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_indent), -3, OBJNULL}, +{"PPRINT-LINEAR", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_linear), -3, OBJNULL}, {"PPRINT-LOGICAL-BLOCK", CL_ORDINARY, NULL, -1, OBJNULL}, -{"PPRINT-NEWLINE", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_newline), -1, OBJNULL}, +{"PPRINT-NEWLINE", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_newline), -2, OBJNULL}, {"PPRINT-POP", CL_ORDINARY, NULL, -1, OBJNULL}, -{"PPRINT-TAB", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_tab), -1, OBJNULL}, -{"PPRINT-TABULAR", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_tabular), -1, OBJNULL}, -{"PRIN1", CL_ORDINARY, cl_prin1, -1, OBJNULL}, +{"PPRINT-TAB", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_tab), -4, OBJNULL}, +{"PPRINT-TABULAR", CL_ORDINARY, ECL_NAME_PPRINT(cl_pprint_tabular), -3, OBJNULL}, +{"PRIN1", CL_ORDINARY, cl_prin1, -2, OBJNULL}, {"PRIN1-TO-STRING", CL_ORDINARY, ECL_NAME(cl_prin1_to_string), 1, OBJNULL}, -{"PRINC", CL_ORDINARY, cl_princ, -1, OBJNULL}, +{"PRINC", CL_ORDINARY, cl_princ, -2, OBJNULL}, {"PRINC-TO-STRING", CL_ORDINARY, ECL_NAME(cl_princ_to_string), 1, OBJNULL}, -{"PRINT", CL_ORDINARY, cl_print, -1, OBJNULL}, +{"PRINT", CL_ORDINARY, cl_print, -2, OBJNULL}, {"PRINT-NOT-READABLE", CL_ORDINARY, NULL, -1, OBJNULL}, {"PRINT-NOT-READABLE-OBJECT", CL_ORDINARY, NULL, -1, OBJNULL}, {"PROBE-FILE", CL_ORDINARY, cl_probe_file, 1, OBJNULL}, @@ -772,25 +775,25 @@ cl_symbols[] = { {"PUSH", CL_ORDINARY, NULL, -1, OBJNULL}, {"PUSHNEW", CL_ORDINARY, NULL, -1, OBJNULL}, {"QUOTE", CL_FORM, NULL, -1, OBJNULL}, -{"RANDOM", CL_ORDINARY, cl_random, -1, OBJNULL}, +{"RANDOM", CL_ORDINARY, cl_random, -2, OBJNULL}, {"RANDOM-STATE", CL_ORDINARY, NULL, -1, OBJNULL}, {"RANDOM-STATE-P", CL_ORDINARY, cl_random_state_p, 1, OBJNULL}, -{"RASSOC", CL_ORDINARY, cl_rassoc, -1, OBJNULL}, -{"RASSOC-IF", CL_ORDINARY, ECL_NAME(cl_rassoc_if), -1, OBJNULL}, -{"RASSOC-IF-NOT", CL_ORDINARY, ECL_NAME(cl_rassoc_if_not), -1, OBJNULL}, +{"RASSOC", CL_ORDINARY, cl_rassoc, -3, OBJNULL}, +{"RASSOC-IF", CL_ORDINARY, ECL_NAME(cl_rassoc_if), -3, OBJNULL}, +{"RASSOC-IF-NOT", CL_ORDINARY, ECL_NAME(cl_rassoc_if_not), -3, OBJNULL}, {"RATIO", CL_ORDINARY, NULL, -1, OBJNULL}, {"RATIONAL", CL_ORDINARY, cl_rational, 1, OBJNULL}, {"RATIONALIZE", CL_ORDINARY, cl_rationalize, 1, OBJNULL}, {"RATIONALP", CL_ORDINARY, cl_rationalp, 1, OBJNULL}, {"READ", CL_ORDINARY, cl_read, -1, OBJNULL}, -{"READ-BYTE", CL_ORDINARY, cl_read_byte, -1, OBJNULL}, +{"READ-BYTE", CL_ORDINARY, cl_read_byte, -2, OBJNULL}, {"READ-CHAR", CL_ORDINARY, cl_read_char, -1, OBJNULL}, {"READ-CHAR-NO-HANG", CL_ORDINARY, cl_read_char_no_hang, -1, OBJNULL}, -{"READ-DELIMITED-LIST", CL_ORDINARY, cl_read_delimited_list, -1, OBJNULL}, -{"READ-FROM-STRING", CL_ORDINARY, ECL_NAME(cl_read_from_string), -1, OBJNULL}, +{"READ-DELIMITED-LIST", CL_ORDINARY, cl_read_delimited_list, -2, OBJNULL}, +{"READ-FROM-STRING", CL_ORDINARY, ECL_NAME(cl_read_from_string), -2, OBJNULL}, {"READ-LINE", CL_ORDINARY, cl_read_line, -1, OBJNULL}, {"READ-PRESERVING-WHITESPACE", CL_ORDINARY, cl_read_preserving_whitespace, -1, OBJNULL}, -{"READ-SEQUENCE", CL_ORDINARY, cl_read_sequence, -1, OBJNULL}, +{"READ-SEQUENCE", CL_ORDINARY, cl_read_sequence, -3, OBJNULL}, {"READER-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, {"READTABLE", CL_ORDINARY, NULL, -1, OBJNULL}, {"READTABLE-CASE", CL_ORDINARY, cl_readtable_case, 1, OBJNULL}, @@ -798,19 +801,19 @@ cl_symbols[] = { {"REAL", CL_ORDINARY, NULL, -1, OBJNULL}, {"REALP", CL_ORDINARY, cl_realp, 1, OBJNULL}, {"REALPART", CL_ORDINARY, cl_realpart, 1, OBJNULL}, -{"REDUCE", CL_ORDINARY, ECL_NAME(cl_reduce), -1, OBJNULL}, +{"REDUCE", CL_ORDINARY, ECL_NAME(cl_reduce), -3, OBJNULL}, {"REM", CL_ORDINARY, cl_rem, 2, OBJNULL}, {"REMF", CL_ORDINARY, NULL, -1, OBJNULL}, {"REMHASH", CL_ORDINARY, cl_remhash, 2, OBJNULL}, -{"REMOVE", CL_ORDINARY, ECL_NAME(cl_remove), -1, OBJNULL}, -{"REMOVE-DUPLICATES", CL_ORDINARY, ECL_NAME(cl_remove_duplicates), -1, OBJNULL}, -{"REMOVE-IF", CL_ORDINARY, ECL_NAME(cl_remove_if), -1, OBJNULL}, -{"REMOVE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_remove_if_not), -1, OBJNULL}, +{"REMOVE", CL_ORDINARY, ECL_NAME(cl_remove), -3, OBJNULL}, +{"REMOVE-DUPLICATES", CL_ORDINARY, ECL_NAME(cl_remove_duplicates), -2, OBJNULL}, +{"REMOVE-IF", CL_ORDINARY, ECL_NAME(cl_remove_if), -3, OBJNULL}, +{"REMOVE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_remove_if_not), -3, OBJNULL}, {"REMPROP", CL_ORDINARY, cl_remprop, 2, OBJNULL}, -{"RENAME-FILE", CL_ORDINARY, cl_rename_file, -1, OBJNULL}, -{"RENAME-PACKAGE", CL_ORDINARY, cl_rename_package, -1, OBJNULL}, -{"REPLACE", CL_ORDINARY, ECL_NAME(cl_replace), -1, OBJNULL}, -{"REQUIRE", CL_ORDINARY, ECL_NAME(cl_require), -1, OBJNULL}, +{"RENAME-FILE", CL_ORDINARY, cl_rename_file, -3, OBJNULL}, +{"RENAME-PACKAGE", CL_ORDINARY, cl_rename_package, -3, OBJNULL}, +{"REPLACE", CL_ORDINARY, ECL_NAME(cl_replace), -3, OBJNULL}, +{"REQUIRE", CL_ORDINARY, ECL_NAME(cl_require), -2, OBJNULL}, {"REST", CL_ORDINARY, cl_cdr, 1, OBJNULL}, {"RESTART", CL_ORDINARY, NULL, 1, OBJNULL}, {"RESTART-BIND", CL_ORDINARY, NULL, 1, OBJNULL}, @@ -822,31 +825,31 @@ cl_symbols[] = { {"REVERSE", CL_ORDINARY, cl_reverse, 1, OBJNULL}, {"ROOM", CL_ORDINARY, NULL, -1, OBJNULL}, {"ROTATEF", CL_ORDINARY, NULL, -1, OBJNULL}, -{"ROUND", CL_ORDINARY, cl_round, -1, OBJNULL}, +{"ROUND", CL_ORDINARY, cl_round, -2, OBJNULL}, {"ROW-MAJOR-AREF", CL_ORDINARY, cl_row_major_aref, 2, OBJNULL}, {"RPLACA", CL_ORDINARY, cl_rplaca, 2, OBJNULL}, {"RPLACD", CL_ORDINARY, cl_rplacd, 2, OBJNULL}, {"SAFETY", CL_ORDINARY, NULL, -1, OBJNULL}, {"SATISFIES", CL_ORDINARY, NULL, -1, OBJNULL}, -{"SBIT", CL_ORDINARY, ECL_NAME(cl_sbit), -1, OBJNULL}, +{"SBIT", CL_ORDINARY, ECL_NAME(cl_sbit), -2, OBJNULL}, {"SCALE-FLOAT", CL_ORDINARY, cl_scale_float, 2, OBJNULL}, {"SCHAR", CL_ORDINARY, cl_char, 2, OBJNULL}, -{"SEARCH", CL_ORDINARY, ECL_NAME(cl_search), -1, OBJNULL}, +{"SEARCH", CL_ORDINARY, ECL_NAME(cl_search), -3, OBJNULL}, {"SECOND", CL_ORDINARY, cl_cadr, 1, OBJNULL}, {"SEQUENCE", CL_ORDINARY, NULL, -1, OBJNULL}, {"SERIOUS-CONDITION", CL_ORDINARY, NULL, -1, OBJNULL}, {"SET", CL_ORDINARY, cl_set, 2, OBJNULL}, -{"SET-DIFFERENCE", CL_ORDINARY, ECL_NAME(cl_set_difference), -1, OBJNULL}, -{"SET-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_set_dispatch_macro_character, -1, OBJNULL}, -{"SET-EXCLUSIVE-OR", CL_ORDINARY, ECL_NAME(cl_set_exclusive_or), -1, OBJNULL}, -{"SET-MACRO-CHARACTER", CL_ORDINARY, cl_set_macro_character, -1, OBJNULL}, -{"SET-PPRINT-DISPATCH", CL_ORDINARY, ECL_NAME_PPRINT(cl_set_pprint_dispatch), -1, OBJNULL}, -{"SET-SYNTAX-FROM-CHAR", CL_ORDINARY, cl_set_syntax_from_char, -1, OBJNULL}, +{"SET-DIFFERENCE", CL_ORDINARY, ECL_NAME(cl_set_difference), -3, OBJNULL}, +{"SET-DISPATCH-MACRO-CHARACTER", CL_ORDINARY, cl_set_dispatch_macro_character, -4, OBJNULL}, +{"SET-EXCLUSIVE-OR", CL_ORDINARY, ECL_NAME(cl_set_exclusive_or), -3, OBJNULL}, +{"SET-MACRO-CHARACTER", CL_ORDINARY, cl_set_macro_character, -3, OBJNULL}, +{"SET-PPRINT-DISPATCH", CL_ORDINARY, ECL_NAME_PPRINT(cl_set_pprint_dispatch), -3, OBJNULL}, +{"SET-SYNTAX-FROM-CHAR", CL_ORDINARY, cl_set_syntax_from_char, -3, OBJNULL}, {"SETF", CL_ORDINARY, NULL, -1, OBJNULL}, {"SETQ", CL_FORM, NULL, -1, OBJNULL}, {"SEVENTH", CL_ORDINARY, cl_seventh, 1, OBJNULL}, -{"SHADOW", CL_ORDINARY, cl_shadow, -1, OBJNULL}, -{"SHADOWING-IMPORT", CL_ORDINARY, cl_shadowing_import, -1, OBJNULL}, +{"SHADOW", CL_ORDINARY, cl_shadow, -2, OBJNULL}, +{"SHADOWING-IMPORT", CL_ORDINARY, cl_shadowing_import, -2, OBJNULL}, {"SHIFTF", CL_ORDINARY, NULL, -1, OBJNULL}, {"SHORT-FLOAT", CL_ORDINARY, NULL, -1, OBJNULL}, {"SHORT-FLOAT-EPSILON", CL_CONSTANT, NULL, -1, OBJNULL}, @@ -878,19 +881,19 @@ cl_symbols[] = { {"SLEEP", CL_ORDINARY, cl_sleep, 1, OBJNULL}, {"SOFTWARE-TYPE", CL_ORDINARY, ECL_NAME(cl_software_type), 0, OBJNULL}, {"SOFTWARE-VERSION", CL_ORDINARY, ECL_NAME(cl_software_version), 0, OBJNULL}, -{"SOME", CL_ORDINARY, ECL_NAME(cl_some), -1, OBJNULL}, -{"SORT", CL_ORDINARY, ECL_NAME(cl_sort), -1, OBJNULL}, +{"SOME", CL_ORDINARY, ECL_NAME(cl_some), -3, OBJNULL}, +{"SORT", CL_ORDINARY, ECL_NAME(cl_sort), -3, OBJNULL}, {"SPACE", CL_ORDINARY, NULL, -1, OBJNULL}, {"SPECIAL", CL_ORDINARY, NULL, -1, OBJNULL}, {"SPECIAL-OPERATOR-P", CL_ORDINARY, cl_special_operator_p, 1, OBJNULL}, {"SPEED", CL_ORDINARY, NULL, -1, OBJNULL}, {"SQRT", CL_ORDINARY, cl_sqrt, 1, OBJNULL}, -{"STABLE-SORT", CL_ORDINARY, ECL_NAME(cl_stable_sort), -1, OBJNULL}, +{"STABLE-SORT", CL_ORDINARY, ECL_NAME(cl_stable_sort), -3, OBJNULL}, {"STANDARD-CHAR", CL_ORDINARY, NULL, -1, OBJNULL}, {"STANDARD-CHAR-P", CL_ORDINARY, cl_standard_char_p, 1, OBJNULL}, {"STEP", CL_ORDINARY, NULL, -1, OBJNULL}, {"STORAGE-CONDITION", CL_ORDINARY, NULL, -1, OBJNULL}, -{"STORE-VALUE", CL_ORDINARY, ECL_NAME(cl_store_value), -1, OBJNULL}, +{"STORE-VALUE", CL_ORDINARY, ECL_NAME(cl_store_value), -2, OBJNULL}, {"STREAM", CL_ORDINARY, NULL, -1, OBJNULL}, {"STREAM-ELEMENT-TYPE", CL_ORDINARY, cl_stream_element_type, 1, OBJNULL}, {"STREAM-ERROR", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -900,7 +903,7 @@ cl_symbols[] = { {"STRING", CL_ORDINARY, cl_string, 1, OBJNULL}, {"STRING-DOWNCASE", CL_ORDINARY, cl_string_downcase, -1, OBJNULL}, {"STRING-CAPITALIZE", CL_ORDINARY, cl_string_capitalize, -1, OBJNULL}, -{"STRING-EQUAL", CL_ORDINARY, cl_string_equal, -1, OBJNULL}, +{"STRING-EQUAL", CL_ORDINARY, cl_string_equal, -3, OBJNULL}, {"STRING-GREATERP", CL_ORDINARY, cl_string_greaterp, -1, OBJNULL}, {"STRING-LEFT-TRIM", CL_ORDINARY, cl_string_left_trim, 2, OBJNULL}, {"STRING-LESSP", CL_ORDINARY, cl_string_lessp, -1, OBJNULL}, @@ -914,22 +917,22 @@ cl_symbols[] = { {"STRING/=", CL_ORDINARY, cl_stringNE, -1, OBJNULL}, {"STRING<", CL_ORDINARY, cl_stringL, -1, OBJNULL}, {"STRING<=", CL_ORDINARY, cl_stringLE, -1, OBJNULL}, -{"STRING=", CL_ORDINARY, cl_stringE, -1, OBJNULL}, +{"STRING=", CL_ORDINARY, cl_stringE, -3, OBJNULL}, {"STRING>", CL_ORDINARY, cl_stringG, -1, OBJNULL}, {"STRING>=", CL_ORDINARY, cl_stringGE, -1, OBJNULL}, {"STRINGP", CL_ORDINARY, cl_stringp, 1, OBJNULL}, {"STRUCTURE", CL_ORDINARY, NULL, -1, OBJNULL}, {"STYLE-WARNING", CL_ORDINARY, NULL, -1, OBJNULL}, -{"SUBLIS", CL_ORDINARY, cl_sublis, -1, OBJNULL}, -{"SUBSEQ", CL_ORDINARY, cl_subseq, -1, OBJNULL}, -{"SUBSETP", CL_ORDINARY, ECL_NAME(cl_subsetp), -1, OBJNULL}, -{"SUBST", CL_ORDINARY, cl_subst, -1, OBJNULL}, -{"SUBST-IF", CL_ORDINARY, ECL_NAME(cl_subst_if), -1, OBJNULL}, -{"SUBST-IF-NOT", CL_ORDINARY, ECL_NAME(cl_subst_if_not), -1, OBJNULL}, -{"SUBSTITUTE", CL_ORDINARY, ECL_NAME(cl_substitute), -1, OBJNULL}, -{"SUBSTITUTE-IF", CL_ORDINARY, ECL_NAME(cl_substitute_if), -1, OBJNULL}, -{"SUBSTITUTE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_substitute_if_not), -1, OBJNULL}, -{"SUBTYPEP", CL_ORDINARY, ECL_NAME(cl_subtypep), -1, OBJNULL}, +{"SUBLIS", CL_ORDINARY, cl_sublis, -3, OBJNULL}, +{"SUBSEQ", CL_ORDINARY, cl_subseq, -3, OBJNULL}, +{"SUBSETP", CL_ORDINARY, ECL_NAME(cl_subsetp), -3, OBJNULL}, +{"SUBST", CL_ORDINARY, cl_subst, -4, OBJNULL}, +{"SUBST-IF", CL_ORDINARY, ECL_NAME(cl_subst_if), -4, OBJNULL}, +{"SUBST-IF-NOT", CL_ORDINARY, ECL_NAME(cl_subst_if_not), -4, OBJNULL}, +{"SUBSTITUTE", CL_ORDINARY, ECL_NAME(cl_substitute), -4, OBJNULL}, +{"SUBSTITUTE-IF", CL_ORDINARY, ECL_NAME(cl_substitute_if), -4, OBJNULL}, +{"SUBSTITUTE-IF-NOT", CL_ORDINARY, ECL_NAME(cl_substitute_if_not), -4, OBJNULL}, +{"SUBTYPEP", CL_ORDINARY, ECL_NAME(cl_subtypep), -3, OBJNULL}, {"SVREF", CL_ORDINARY, cl_svref, 2, OBJNULL}, {"SXHASH", CL_ORDINARY, cl_sxhash, 1, OBJNULL}, {"SYMBOL", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -953,11 +956,11 @@ cl_symbols[] = { {"THROW", CL_FORM, NULL, -1, OBJNULL}, {"TIME", CL_ORDINARY, NULL, -1, OBJNULL}, {"TRACE", CL_ORDINARY, NULL, -1, OBJNULL}, -{"TRANSLATE-LOGICAL-PATHNAME", CL_ORDINARY, cl_translate_logical_pathname, -1, OBJNULL}, -{"TRANSLATE-PATHNAME", CL_ORDINARY, cl_translate_pathname, -1, OBJNULL}, -{"TREE-EQUAL", CL_ORDINARY, cl_tree_equal, -1, OBJNULL}, +{"TRANSLATE-LOGICAL-PATHNAME", CL_ORDINARY, cl_translate_logical_pathname, -2, OBJNULL}, +{"TRANSLATE-PATHNAME", CL_ORDINARY, cl_translate_pathname, -4, OBJNULL}, +{"TREE-EQUAL", CL_ORDINARY, cl_tree_equal, -3, OBJNULL}, {"TRUENAME", CL_ORDINARY, cl_truename, 1, OBJNULL}, -{"TRUNCATE", CL_ORDINARY, cl_truncate, -1, OBJNULL}, +{"TRUNCATE", CL_ORDINARY, cl_truncate, -2, OBJNULL}, {"TWO-WAY-STREAM", CL_ORDINARY, NULL, -1, OBJNULL}, {"TWO-WAY-STREAM-INPUT-STREAM", CL_ORDINARY, cl_two_way_stream_input_stream, 1, OBJNULL}, {"TWO-WAY-STREAM-OUTPUT-STREAM", CL_ORDINARY, cl_two_way_stream_output_stream, 1, OBJNULL}, @@ -967,25 +970,25 @@ cl_symbols[] = { {"TYPE-ERROR-EXPECTED-TYPE", CL_ORDINARY, NULL, -1, OBJNULL}, {"TYPE-OF", CL_ORDINARY, cl_type_of, 1, OBJNULL}, {"TYPECASE", CL_ORDINARY, NULL, -1, OBJNULL}, -{"TYPEP", CL_ORDINARY, ECL_NAME(cl_typep), -1, OBJNULL}, +{"TYPEP", CL_ORDINARY, ECL_NAME(cl_typep), -3, OBJNULL}, {"UNBOUND-SLOT", CL_ORDINARY, NULL, -1, OBJNULL}, {"UNBOUND-SLOT-INSTANCE", CL_ORDINARY, NULL, -1, OBJNULL}, {"UNBOUND-VARIABLE", CL_ORDINARY, NULL, -1, OBJNULL}, {"UNDEFINED-FUNCTION", CL_ORDINARY, NULL, -1, OBJNULL}, -{"UNEXPORT", CL_ORDINARY, cl_unexport, -1, OBJNULL}, -{"UNINTERN", CL_ORDINARY, cl_unintern, -1, OBJNULL}, -{"UNION", CL_ORDINARY, ECL_NAME(cl_union), -1, OBJNULL}, +{"UNEXPORT", CL_ORDINARY, cl_unexport, -2, OBJNULL}, +{"UNINTERN", CL_ORDINARY, cl_unintern, -2, OBJNULL}, +{"UNION", CL_ORDINARY, ECL_NAME(cl_union), -3, OBJNULL}, {"UNLESS", CL_FORM, NULL, -1, OBJNULL}, -{"UNREAD-CHAR", CL_ORDINARY, cl_unread_char, -1, OBJNULL}, +{"UNREAD-CHAR", CL_ORDINARY, cl_unread_char, -2, OBJNULL}, {"UNSIGNED-BYTE", CL_ORDINARY, NULL, -1, OBJNULL}, {"UNTRACE", CL_ORDINARY, NULL, -1, OBJNULL}, -{"UNUSE-PACKAGE", CL_ORDINARY, cl_unuse_package, -1, OBJNULL}, +{"UNUSE-PACKAGE", CL_ORDINARY, cl_unuse_package, -2, OBJNULL}, {"UNWIND-PROTECT", CL_FORM, NULL, -1, OBJNULL}, -{"UPGRADED-ARRAY-ELEMENT-TYPE", CL_ORDINARY, ECL_NAME(cl_upgraded_array_element_type), -1, OBJNULL}, -{"UPGRADED-COMPLEX-PART-TYPE", CL_ORDINARY, ECL_NAME(cl_upgraded_complex_part_type), -1, OBJNULL}, +{"UPGRADED-ARRAY-ELEMENT-TYPE", CL_ORDINARY, ECL_NAME(cl_upgraded_array_element_type), -2, OBJNULL}, +{"UPGRADED-COMPLEX-PART-TYPE", CL_ORDINARY, ECL_NAME(cl_upgraded_complex_part_type), -2, OBJNULL}, {"UPPER-CASE-P", CL_ORDINARY, cl_upper_case_p, 1, OBJNULL}, -{"USE-PACKAGE", CL_ORDINARY, cl_use_package, -1, OBJNULL}, -{"USE-VALUE", CL_ORDINARY, ECL_NAME(cl_use_value), -1, OBJNULL}, +{"USE-PACKAGE", CL_ORDINARY, cl_use_package, -2, OBJNULL}, +{"USE-VALUE", CL_ORDINARY, ECL_NAME(cl_use_value), -2, OBJNULL}, {"USER-HOMEDIR-PATHNAME", CL_ORDINARY, cl_user_homedir_pathname, -1, OBJNULL}, {"VALUES", CL_ORDINARY, cl_values, -1, OBJNULL}, {"VALUES-LIST", CL_ORDINARY, cl_values_list, 1, OBJNULL}, @@ -993,12 +996,12 @@ cl_symbols[] = { {"VECTOR", CL_ORDINARY, ECL_NAME(cl_vector), -1, OBJNULL}, {"VECTOR-POP", CL_ORDINARY, ECL_NAME(cl_vector_pop), 1, OBJNULL}, {"VECTOR-PUSH", CL_ORDINARY, cl_vector_push, 2, OBJNULL}, -{"VECTOR-PUSH-EXTEND", CL_ORDINARY, cl_vector_push_extend, -1, OBJNULL}, +{"VECTOR-PUSH-EXTEND", CL_ORDINARY, cl_vector_push_extend, -3, OBJNULL}, {"VECTORP", CL_ORDINARY, cl_vectorp, 1, OBJNULL}, {"WARN", CL_ORDINARY, NULL, -1, OBJNULL}, {"WARNING", CL_ORDINARY, NULL, -1, OBJNULL}, {"WHEN", CL_FORM, NULL, -1, OBJNULL}, -{"WILD-PATHNAME-P", CL_ORDINARY, cl_wild_pathname_p, -1, OBJNULL}, +{"WILD-PATHNAME-P", CL_ORDINARY, cl_wild_pathname_p, -2, OBJNULL}, {"WITH-COMPILATION-UNIT", CL_ORDINARY, NULL, -1, OBJNULL}, {"WITH-CONDITION-RESTARTS", CL_ORDINARY, NULL, -1, OBJNULL}, {"WITH-HASH-TABLE-ITERATOR", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -1009,13 +1012,13 @@ cl_symbols[] = { {"WITH-PACKAGE-ITERATOR", CL_ORDINARY, NULL, -1, OBJNULL}, {"WITH-SIMPLE-RESTART", CL_ORDINARY, NULL, -1, OBJNULL}, {"WITH-STANDARD-IO-SYNTAX", CL_ORDINARY, NULL, -1, OBJNULL}, -{"WRITE", CL_ORDINARY, cl_write, -1, OBJNULL}, +{"WRITE", CL_ORDINARY, cl_write, -2, OBJNULL}, {"WRITE-BYTE", CL_ORDINARY, cl_write_byte, 2, OBJNULL}, -{"WRITE-CHAR", CL_ORDINARY, cl_write_char, -1, OBJNULL}, -{"WRITE-LINE", CL_ORDINARY, cl_write_line, -1, OBJNULL}, -{"WRITE-SEQUENCE", CL_ORDINARY, cl_write_sequence, -1, OBJNULL}, -{"WRITE-STRING", CL_ORDINARY, cl_write_string, -1, OBJNULL}, -{"WRITE-TO-STRING", CL_ORDINARY, ECL_NAME(cl_write_to_string), -1, OBJNULL}, +{"WRITE-CHAR", CL_ORDINARY, cl_write_char, -2, OBJNULL}, +{"WRITE-LINE", CL_ORDINARY, cl_write_line, -2, OBJNULL}, +{"WRITE-SEQUENCE", CL_ORDINARY, cl_write_sequence, -3, OBJNULL}, +{"WRITE-STRING", CL_ORDINARY, cl_write_string, -2, OBJNULL}, +{"WRITE-TO-STRING", CL_ORDINARY, ECL_NAME(cl_write_to_string), -2, OBJNULL}, {"Y-OR-N-P", CL_ORDINARY, ECL_NAME(cl_y_or_n_p), -1, OBJNULL}, {"YES-OR-NO-P", CL_ORDINARY, ECL_NAME(cl_yes_or_no_p), -1, OBJNULL}, {"ZEROP", CL_ORDINARY, cl_zerop, 1, OBJNULL}, @@ -1034,20 +1037,20 @@ cl_symbols[] = { {"DEFINE-METHOD-COMBINATION", CL_ORDINARY, NULL, -1, OBJNULL}, {"DEFMETHOD", CL_ORDINARY, NULL, -1, OBJNULL}, {"DESCRIBE-OBJECT", CL_ORDINARY, NULL, -1, OBJNULL}, -{"ENSURE-GENERIC-FUNCTION", CL_ORDINARY, NULL, -1, OBJNULL}, -{"FIND-CLASS", CL_ORDINARY, cl_find_class, -1, OBJNULL}, +{"ENSURE-GENERIC-FUNCTION", CL_ORDINARY, NULL, -2, OBJNULL}, +{"FIND-CLASS", CL_ORDINARY, cl_find_class, -2, OBJNULL}, {"FIND-METHOD", CL_ORDINARY, NULL, -1, OBJNULL}, {"GENERIC-FUNCTION", CL_ORDINARY, NULL, -1, OBJNULL}, {"IF", CL_FORM, NULL, -1, OBJNULL}, {"INITIALIZE-INSTANCE", CL_ORDINARY, NULL, -1, OBJNULL}, -{"INVALID-METHOD-ERROR", CL_ORDINARY, ECL_NAME(cl_invalid_method_error), -1, OBJNULL}, +{"INVALID-METHOD-ERROR", CL_ORDINARY, ECL_NAME(cl_invalid_method_error), -3, OBJNULL}, {"MAKE-INSTANCE", CL_ORDINARY, NULL, -1, OBJNULL}, {"MAKE-INSTANCES-OBSOLETE", CL_ORDINARY, NULL, -1, OBJNULL}, {"MAKE-LOAD-FORM", CL_ORDINARY, NULL, -1, OBJNULL}, {"MAKE-LOAD-FORM-SAVING-SLOTS", CL_ORDINARY, NULL, -1, OBJNULL}, {"MAKE-METHOD", CL_ORDINARY, NULL, -1, OBJNULL}, {"METHOD", CL_ORDINARY, NULL, -1, OBJNULL}, -{"METHOD-COMBINATION-ERROR", CL_ORDINARY, ECL_NAME(cl_method_combination_error), -1, OBJNULL}, +{"METHOD-COMBINATION-ERROR", CL_ORDINARY, ECL_NAME(cl_method_combination_error), -2, OBJNULL}, {"METHOD-COMBINATION", CL_ORDINARY, NULL, -1, OBJNULL}, {"METHOD-QUALIFIERS", CL_ORDINARY, NULL, -1, OBJNULL}, {"NEXT-METHOD-P", CL_ORDINARY, NULL, -1, OBJNULL}, @@ -1134,7 +1137,7 @@ cl_symbols[] = { {SYS_ "ALLOCATE-RAW-INSTANCE", SI_ORDINARY, si_allocate_raw_instance, 3, OBJNULL}, {EXT_ "ARGC", EXT_ORDINARY, si_argc, 0, OBJNULL}, {EXT_ "ARGV", EXT_ORDINARY, si_argv, 1, OBJNULL}, -{SYS_ "ASET", SI_ORDINARY, si_aset, -1, OBJNULL}, +{SYS_ "ASET", SI_ORDINARY, si_aset, -2, OBJNULL}, {SYS_ "BASE-CHAR-P", SI_ORDINARY, si_base_char_p, 1, OBJNULL}, {SYS_ "BASE-STRING-P", SI_ORDINARY, si_base_string_p, 1, OBJNULL}, {SYS_ "BC-DISASSEMBLE", SI_ORDINARY, si_bc_disassemble, 1, OBJNULL}, @@ -1146,7 +1149,7 @@ cl_symbols[] = { {SYS_ "BIT-ARRAY-OP", SI_ORDINARY, si_bit_array_op, 4, OBJNULL}, {SYS_ "C-ARGUMENTS-LIMIT", SI_CONSTANT, NULL, -1, ecl_make_fixnum(ECL_C_ARGUMENTS_LIMIT)}, {SYS_ "CHAR-SET", SI_ORDINARY, si_char_set, 3, OBJNULL}, -{EXT_ "CHDIR", EXT_ORDINARY, si_chdir, -1, OBJNULL}, +{EXT_ "CHDIR", EXT_ORDINARY, si_chdir, -2, OBJNULL}, {SYS_ "CLEAR-COMPILER-PROPERTIES", SI_ORDINARY, cl_identity, 1, OBJNULL}, {SYS_ "COERCE-TO-BASE-STRING", SI_ORDINARY, si_coerce_to_base_string, 1, OBJNULL}, {SYS_ "COERCE-TO-EXTENDED-STRING", SI_ORDINARY, si_coerce_to_extended_string, 1, OBJNULL}, @@ -1161,7 +1164,7 @@ cl_symbols[] = { {SYS_ "DO-READ-SEQUENCE", SI_ORDINARY, si_do_read_sequence, 4, OBJNULL}, {SYS_ "DO-WRITE-SEQUENCE", SI_ORDINARY, si_do_write_sequence, 4, OBJNULL}, {SYS_ "ELT-SET", SI_ORDINARY, si_elt_set, 3, OBJNULL}, -{SYS_ "EVAL-WITH-ENV", SI_ORDINARY, si_eval_with_env, -1, OBJNULL}, +{SYS_ "EVAL-WITH-ENV", SI_ORDINARY, si_eval_with_env, -2, OBJNULL}, {SYS_ "EXPAND-DEFMACRO", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "FILE-COLUMN", SI_ORDINARY, si_file_column, 1, OBJNULL}, {EXT_ "FILE-KIND", EXT_ORDINARY, si_file_kind, 2, OBJNULL}, @@ -1171,15 +1174,15 @@ cl_symbols[] = { {EXT_ "FIXNUMP", EXT_ORDINARY, si_fixnump, 1, OBJNULL}, {SYS_ "FORMAT-ERROR", SI_ORDINARY, NULL, -1, OBJNULL}, #ifdef ECL_CMU_FORMAT -{SYS_ "FORMATTER-AUX", SI_ORDINARY, NULL, -1, OBJNULL}, +{SYS_ "FORMATTER-AUX", SI_ORDINARY, NULL, -3, OBJNULL}, #else -{SYS_ "FORMATTER-AUX", SI_ORDINARY, si_formatter_aux, -1, OBJNULL}, +{SYS_ "FORMATTER-AUX", SI_ORDINARY, si_formatter_aux, -3, OBJNULL}, #endif {SYS_ "FRS-BDS", SI_ORDINARY, si_frs_bds, 1, OBJNULL}, {SYS_ "FRS-IHS", SI_ORDINARY, si_frs_ihs, 1, OBJNULL}, {SYS_ "FRS-TAG", SI_ORDINARY, si_frs_tag, 1, OBJNULL}, {SYS_ "FRS-TOP", SI_ORDINARY, si_frs_top, 0, OBJNULL}, -{SYS_ "FSET", SI_ORDINARY, si_fset, -1, OBJNULL}, +{SYS_ "FSET", SI_ORDINARY, si_fset, -3, OBJNULL}, {SYS_ "FUNCTION-BLOCK-NAME", SI_ORDINARY, si_function_block_name, 1, OBJNULL}, {SYS_ "GET-LIBRARY-PATHNAME", SI_ORDINARY, si_get_library_pathname, 0, OBJNULL}, {SYS_ "GET-SYSPROP", SI_ORDINARY, si_get_sysprop, 2, OBJNULL}, @@ -1204,9 +1207,9 @@ cl_symbols[] = { {SYS_ "MAKE-LAMBDA", SI_ORDINARY, si_make_lambda, 2, OBJNULL}, {SYS_ "MAKE-PURE-ARRAY", SI_ORDINARY, si_make_pure_array, 6, OBJNULL}, {SYS_ "MAKE-STRING-OUTPUT-STREAM-FROM-STRING", SI_ORDINARY, si_make_string_output_stream_from_string, 1, OBJNULL}, -{SYS_ "MAKE-STRUCTURE", SI_ORDINARY, si_make_structure, -1, OBJNULL}, +{SYS_ "MAKE-STRUCTURE", SI_ORDINARY, si_make_structure, -2, OBJNULL}, {SYS_ "MAKE-VECTOR", SI_ORDINARY, si_make_vector, 6, OBJNULL}, -{SYS_ "MANGLE-NAME", SI_ORDINARY, si_mangle_name, -1, OBJNULL}, +{SYS_ "MANGLE-NAME", SI_ORDINARY, si_mangle_name, -2, OBJNULL}, {SYS_ "MEMBER1", SI_ORDINARY, si_member1, 5, OBJNULL}, {SYS_ "MEMQ", SI_ORDINARY, si_memq, 2, OBJNULL}, {SYS_ "MKDIR", SI_ORDINARY, si_mkdir, 2, OBJNULL}, @@ -1228,14 +1231,14 @@ cl_symbols[] = { {SYS_ "%ADD-PACKAGE-LOCAL-NICKNAME", EXT_ORDINARY, si_add_package_local_nickname, 3, OBJNULL}, {SYS_ "%REMOVE-PACKAGE-LOCAL-NICKNAME", EXT_ORDINARY, si_remove_package_local_nickname, 2, OBJNULL}, {SYS_ "PACKAGE-HASH-TABLES", SI_ORDINARY, si_package_hash_tables, 1, OBJNULL}, -{SYS_ "PATHNAME-TRANSLATIONS", SI_ORDINARY, si_pathname_translations, -1, OBJNULL}, +{SYS_ "PATHNAME-TRANSLATIONS", SI_ORDINARY, si_pathname_translations, -2, OBJNULL}, {SYS_ "POINTER", SI_ORDINARY, si_pointer, 1, OBJNULL}, {SYS_ "PRETTY-PRINT-FORMAT", SI_ORDINARY, NULL, -1, OBJNULL}, -{SYS_ "PROCESS-DECLARATIONS", SI_ORDINARY, si_process_declarations, -1, OBJNULL}, +{SYS_ "PROCESS-DECLARATIONS", SI_ORDINARY, si_process_declarations, -2, OBJNULL}, {SYS_ "PROCESS-LAMBDA", SI_ORDINARY, si_process_lambda, 1, OBJNULL}, {SYS_ "PROCESS-LAMBDA-LIST", SI_ORDINARY, si_process_lambda_list, 2, OBJNULL}, {SYS_ "PUT-F", SI_ORDINARY, si_put_f, 3, OBJNULL}, -{SYS_ "PUT-PROPERTIES", SI_ORDINARY, si_put_properties, -1, OBJNULL}, +{SYS_ "PUT-PROPERTIES", SI_ORDINARY, si_put_properties, -2, OBJNULL}, {SYS_ "PUT-SYSPROP", SI_ORDINARY, si_put_sysprop, 3, OBJNULL}, {SYS_ "PUTPROP", SI_ORDINARY, si_putprop, 3, OBJNULL}, {SYS_ "READTABLE-CASE-SET", SI_ORDINARY, si_readtable_case_set, 2, OBJNULL}, @@ -1243,10 +1246,10 @@ cl_symbols[] = { {SYS_ "REM-SYSPROP", SI_ORDINARY, si_rem_sysprop, 2, OBJNULL}, {SYS_ "REPLACE-ARRAY", SI_ORDINARY, si_replace_array, 2, OBJNULL}, {SYS_ "ROW-MAJOR-ASET", SI_ORDINARY, si_row_major_aset, 3, OBJNULL}, -{EXT_ "SAFE-EVAL", EXT_ORDINARY, ECL_NAME(si_safe_eval), -1, OBJNULL}, +{EXT_ "SAFE-EVAL", EXT_ORDINARY, ECL_NAME(si_safe_eval), -3, OBJNULL}, {SYS_ "SCH-FRS-BASE", SI_ORDINARY, si_sch_frs_base, 2, OBJNULL}, {SYS_ "SCHAR-SET", SI_ORDINARY, si_char_set, 3, OBJNULL}, -{SYS_ "SERROR", SI_ORDINARY, si_serror, -1, OBJNULL}, +{SYS_ "SERROR", SI_ORDINARY, si_serror, -3, OBJNULL}, {SYS_ "SHARP-A-READER", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "SHARP-S-READER", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "SELECT-PACKAGE", SI_ORDINARY, si_select_package, 1, OBJNULL}, @@ -1258,14 +1261,14 @@ cl_symbols[] = { #endif {SYS_ "SETF-METHOD", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "SETF-NAMEP", SI_ORDINARY, NULL, -1, OBJNULL}, -{SYS_ "SIMPLE-PROGRAM-ERROR", SI_ORDINARY, ECL_NAME(si_simple_program_error), -1, OBJNULL}, -{SYS_ "SIGNAL-SIMPLE-ERROR", SI_ORDINARY, si_signal_simple_error, -1, OBJNULL}, +{SYS_ "SIMPLE-PROGRAM-ERROR", SI_ORDINARY, ECL_NAME(si_simple_program_error), -2, OBJNULL}, +{SYS_ "SIGNAL-SIMPLE-ERROR", SI_ORDINARY, si_signal_simple_error, -5, OBJNULL}, {SYS_ "SIGNAL-TYPE-ERROR", SI_ORDINARY, si_signal_type_error, 2, OBJNULL}, {SYS_ "SPECIALP", SI_ORDINARY, si_specialp, 1, OBJNULL}, {SYS_ "STANDARD-READTABLE", SI_ORDINARY, si_standard_readtable, 0, OBJNULL}, {SYS_ "STEPPER", SI_ORDINARY, OBJNULL, -1, OBJNULL}, {SYS_ "BASE-STRING-CONCATENATE", SI_ORDINARY, si_base_string_concatenate, -1, OBJNULL}, -{SYS_ "STRING-TO-OBJECT", SI_ORDINARY, ECL_NAME(si_string_to_object), -1, OBJNULL}, +{SYS_ "STRING-TO-OBJECT", SI_ORDINARY, ECL_NAME(si_string_to_object), -2, OBJNULL}, {SYS_ "STRUCTURE-NAME", SI_ORDINARY, si_structure_name, 1, OBJNULL}, {SYS_ "STRUCTURE-PRINT-FUNCTION", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "STRUCTURE-REF", SI_ORDINARY, si_structure_ref, 3, OBJNULL}, @@ -1297,8 +1300,8 @@ cl_symbols[] = { {SYS_ "INSTANCEP", SI_ORDINARY, si_instancep, 1, OBJNULL}, {SYS_ "SL-BOUNDP", SI_ORDINARY, si_sl_boundp, 1, OBJNULL}, {SYS_ "SL-MAKUNBOUND", SI_ORDINARY, si_sl_makunbound, 2, OBJNULL}, -{SYS_ "SUBCLASSP", SI_ORDINARY, ECL_NAME(si_subclassp), -1, OBJNULL}, -{SYS_ "OF-CLASS-P", SI_ORDINARY, ECL_NAME(si_of_class_p), -1, OBJNULL}, +{SYS_ "SUBCLASSP", SI_ORDINARY, ECL_NAME(si_subclassp), -3, OBJNULL}, +{SYS_ "OF-CLASS-P", SI_ORDINARY, ECL_NAME(si_of_class_p), -3, OBJNULL}, /*{SYS_ "UNBOUND", SI_ORDINARY, si_unbound, 0, OBJNULL}, */ {EXT_ "*SOURCE-LOCATION*", EXT_SPECIAL, NULL, -1, ECL_NIL}, @@ -1306,7 +1309,7 @@ cl_symbols[] = { {EXT_ "REGISTER-WITH-PDE", EXT_ORDINARY, NULL, -1, OBJNULL}, /* #ifdef PROFILE */ -{SYS_ "PROFILE", SI_ORDINARY, IF_PROFILE(si_profile), -1, OBJNULL}, +{SYS_ "PROFILE", SI_ORDINARY, IF_PROFILE(si_profile), -3, OBJNULL}, {SYS_ "CLEAR-PROFILE", SI_ORDINARY, IF_PROFILE(si_clear_profile), -1, OBJNULL}, {SYS_ "DISPLAY-PROFILE", SI_ORDINARY, IF_PROFILE(si_display_profile), -1, OBJNULL}, /* #endif PROFILE */ @@ -1319,7 +1322,7 @@ cl_symbols[] = { {SYS_ "LOOKUP-HOST-ENTRY", SI_ORDINARY, IF_TCP(si_lookup_host_entry), 1, OBJNULL}, /* #endif TCP */ -{EXT_ "CATCH-SIGNAL", EXT_ORDINARY, si_catch_signal, -1, OBJNULL}, +{EXT_ "CATCH-SIGNAL", EXT_ORDINARY, si_catch_signal, -3, OBJNULL}, {EXT_ "GET-SIGNAL-HANDLER", EXT_ORDINARY, si_get_signal_handler, 1, OBJNULL}, {EXT_ "SET-SIGNAL-HANDLER", EXT_ORDINARY, si_set_signal_handler, 2, OBJNULL}, @@ -1541,16 +1544,16 @@ cl_symbols[] = { {SYS_ "GC-DUMP", SI_ORDINARY, si_gc_dump, 0, OBJNULL}, {SYS_ "GC-STATS", SI_ORDINARY, si_gc_stats, 1, OBJNULL}, #else -{EXT_ "GC", EXT_ORDINARY, si_gc, 1, OBJNULL}, -{SYS_ "ALLOCATE", SI_ORDINARY, si_allocate, -1, OBJNULL}, -{SYS_ "ALLOCATED-PAGES", SI_ORDINARY, si_allocated_pages, -1, OBJNULL}, -{SYS_ "MAXIMUM-ALLOCATABLE-PAGES", SI_ORDINARY, si_maximum_allocatable_pages, -1, OBJNULL}, -{SYS_ "ALLOCATE-CONTIGUOUS-PAGES", SI_ORDINARY, si_allocate_contiguous_pages, -1, OBJNULL}, +{EXT_ "GC", EXT_ORDINARY, si_gc, -2, OBJNULL}, +{SYS_ "ALLOCATE", SI_ORDINARY, si_allocate, -3, OBJNULL}, +{SYS_ "ALLOCATED-PAGES", SI_ORDINARY, si_allocated_pages, -2, OBJNULL}, +{SYS_ "MAXIMUM-ALLOCATABLE-PAGES", SI_ORDINARY, si_maximum_allocatable_pages, -2, OBJNULL}, +{SYS_ "ALLOCATE-CONTIGUOUS-PAGES", SI_ORDINARY, si_allocate_contiguous_pages, -2, OBJNULL}, {SYS_ "ALLOCATED-CONTIGUOUS-PAGES", SI_ORDINARY, si_allocated_contiguous_pages, -1, OBJNULL}, {SYS_ "MAXIMUM-CONTIGUOUS-PAGES", SI_ORDINARY, si_maximum_contiguous_pages, -1, OBJNULL}, {SYS_ "GC-TIME", SI_ORDINARY, si_gc_time, -1, OBJNULL}, {SYS_ "GET-HOLE-SIZE", SI_ORDINARY, si_get_hole_size, -1, OBJNULL}, -{SYS_ "SET-HOLE-SIZE", SI_ORDINARY, si_set_hole_size, -1, OBJNULL}, +{SYS_ "SET-HOLE-SIZE", SI_ORDINARY, si_set_hole_size, -2, OBJNULL}, {SYS_ "IGNORE-MAXIMUM-PAGES", SI_ORDINARY, si_ignore_maximum_pages, -1, OBJNULL}, {SYS_ "ROOM-REPORT", SI_ORDINARY, si_room_report, -1, OBJNULL}, {SYS_ "RESET-GC-COUNT", SI_ORDINARY, si_reset_gc_count, -1, OBJNULL}, @@ -1569,8 +1572,8 @@ cl_symbols[] = { {MP_ "PROCESS-YIELD", MP_ORDINARY, IF_MP(mp_process_yield), 0, OBJNULL}, {MP_ "PROCESS-KILL", MP_ORDINARY, IF_MP(mp_process_kill), 1, OBJNULL}, {MP_ "PROCESS-NAME", MP_ORDINARY, IF_MP(mp_process_name), 1, OBJNULL}, -{MP_ "PROCESS-PRESET", MP_ORDINARY, IF_MP(mp_process_preset), -1, OBJNULL}, -{MP_ "PROCESS-RUN-FUNCTION", MP_ORDINARY, IF_MP(mp_process_run_function), -1, OBJNULL}, +{MP_ "PROCESS-PRESET", MP_ORDINARY, IF_MP(mp_process_preset), -3, OBJNULL}, +{MP_ "PROCESS-RUN-FUNCTION", MP_ORDINARY, IF_MP(mp_process_run_function), -3, OBJNULL}, {MP_ "PROCESS-WHOSTATE", MP_ORDINARY, IF_MP(mp_process_whostate), 1, OBJNULL}, {MP_ "PROCESS-JOIN", MP_ORDINARY, IF_MP(mp_process_join), 1, OBJNULL}, {MP_ "MAKE-LOCK", MP_ORDINARY, IF_MP(mp_make_lock), -1, OBJNULL}, @@ -1580,7 +1583,7 @@ cl_symbols[] = { {MP_ "LOCK-NAME", MP_ORDINARY, IF_MP(mp_lock_name), 1, OBJNULL}, {MP_ "LOCK-OWNER", MP_ORDINARY, IF_MP(mp_lock_owner), 1, OBJNULL}, {MP_ "LOCK-COUNT", MP_ORDINARY, IF_MP(mp_lock_count), 1, OBJNULL}, -{MP_ "GET-LOCK", MP_ORDINARY, IF_MP(mp_get_lock), -1, OBJNULL}, +{MP_ "GET-LOCK", MP_ORDINARY, IF_MP(mp_get_lock), -2, OBJNULL}, {MP_ "GIVEUP-LOCK", MP_ORDINARY, IF_MP(mp_giveup_lock), 1, OBJNULL}, {MP_ "MAKE-CONDITION-VARIABLE", MP_ORDINARY, IF_MP(mp_make_condition_variable), 0, OBJNULL}, {MP_ "CONDITION-VARIABLE-WAIT", MP_ORDINARY, IF_MP(mp_condition_variable_wait), 2, OBJNULL}, @@ -1601,8 +1604,8 @@ cl_symbols[] = { {MP_ "MAKE-RWLOCK", MP_ORDINARY, IF_MP(mp_make_rwlock), -1, OBJNULL}, {MP_ "RWLOCK", MP_ORDINARY, NULL, -1, OBJNULL}, {MP_ "RWLOCK-NAME", MP_ORDINARY, IF_MP(mp_rwlock_name), 1, OBJNULL}, -{MP_ "GET-RWLOCK-READ", MP_ORDINARY, IF_MP(mp_get_rwlock_read), -1, OBJNULL}, -{MP_ "GET-RWLOCK-WRITE", MP_ORDINARY, IF_MP(mp_get_rwlock_write), -1, OBJNULL}, +{MP_ "GET-RWLOCK-READ", MP_ORDINARY, IF_MP(mp_get_rwlock_read), -2, OBJNULL}, +{MP_ "GET-RWLOCK-WRITE", MP_ORDINARY, IF_MP(mp_get_rwlock_write), -2, OBJNULL}, {MP_ "GIVEUP-RWLOCK-READ", MP_ORDINARY, IF_MP(mp_giveup_rwlock_read), 1, OBJNULL}, {MP_ "GIVEUP-RWLOCK-WRITE", MP_ORDINARY, IF_MP(mp_giveup_rwlock_write), 1, OBJNULL}, {MP_ "GLOBAL-LOCK", MP_ORDINARY, NULL, -1, OBJNULL}, @@ -1610,7 +1613,7 @@ cl_symbols[] = { {MP_ "SEMAPHORE", MP_ORDINARY, NULL, -1, OBJNULL}, {MP_ "MAKE-SEMAPHORE", MP_ORDINARY, IF_MP(mp_make_semaphore), -1, OBJNULL}, -{MP_ "SIGNAL-SEMAPHORE", MP_ORDINARY, IF_MP(mp_signal_semaphore), -1, OBJNULL}, +{MP_ "SIGNAL-SEMAPHORE", MP_ORDINARY, IF_MP(mp_signal_semaphore), -2, OBJNULL}, {MP_ "WAIT-ON-SEMAPHORE", MP_ORDINARY, IF_MP(mp_wait_on_semaphore), 1, OBJNULL}, {MP_ "TRY-GET-SEMAPHORE", MP_ORDINARY, IF_MP(mp_try_get_semaphore), 1, OBJNULL}, {MP_ "SEMAPHORE-COUNT", MP_ORDINARY, IF_MP(mp_semaphore_count), 1, OBJNULL}, @@ -1619,8 +1622,8 @@ cl_symbols[] = { {KEY_ "COUNT", KEYWORD, NULL, -1, OBJNULL}, {MP_ "BARRIER", MP_ORDINARY, NULL, -1, OBJNULL}, -{MP_ "MAKE-BARRIER", MP_ORDINARY, IF_MP(mp_make_barrier), -1, OBJNULL}, -{MP_ "BARRIER-UNBLOCK", MP_ORDINARY, IF_MP(mp_barrier_unblock), -1, OBJNULL}, +{MP_ "MAKE-BARRIER", MP_ORDINARY, IF_MP(mp_make_barrier), -2, OBJNULL}, +{MP_ "BARRIER-UNBLOCK", MP_ORDINARY, IF_MP(mp_barrier_unblock), -2, OBJNULL}, {MP_ "BARRIER-WAIT", MP_ORDINARY, IF_MP(mp_barrier_wait), 1, OBJNULL}, {MP_ "BARRIER-COUNT", MP_ORDINARY, IF_MP(mp_barrier_count), 1, OBJNULL}, {MP_ "BARRIER-NAME", MP_ORDINARY, IF_MP(mp_barrier_name), 1, OBJNULL}, @@ -1703,7 +1706,7 @@ cl_symbols[] = { {CLOS_ "EFFECTIVE-SLOT-DEFINITION-CLASS", CLOS_ORDINARY, NULL, -1, OBJNULL}, {CLOS_ "ENSURE-CLASS", CLOS_ORDINARY, NULL, -1, OBJNULL}, {CLOS_ "ENSURE-CLASS-USING-CLASS", CLOS_ORDINARY, NULL, -1, OBJNULL}, -{CLOS_ "ENSURE-GENERIC-FUNCTION-USING-CLASS", CLOS_ORDINARY, NULL, -1, OBJNULL}, +{CLOS_ "ENSURE-GENERIC-FUNCTION-USING-CLASS", CLOS_ORDINARY, NULL, -3, OBJNULL}, {CLOS_ "EQL-SPECIALIZER", CLOS_ORDINARY, NULL, -1, OBJNULL}, {CLOS_ "EQL-SPECIALIZER-OBJECT", CLOS_ORDINARY, NULL, -1, OBJNULL}, {CLOS_ "EXTRACT-LAMBDA-LIST", CLOS_ORDINARY, ECL_NAME(clos_extract_lambda_list), 1, OBJNULL}, @@ -1782,7 +1785,7 @@ cl_symbols[] = { {EXT_ "CL-FIXNUM", EXT_ORDINARY, NULL, -1, NULL}, {EXT_ "CL-INDEX", EXT_ORDINARY, NULL, -1, NULL}, -{SYS_ "DO-DEFTYPE", SI_ORDINARY, ECL_NAME(si_do_deftype), -1, OBJNULL}, +{SYS_ "DO-DEFTYPE", SI_ORDINARY, ECL_NAME(si_do_deftype), -4, OBJNULL}, {SYS_ "CREATE-TYPE-NAME", SI_ORDINARY, NULL, -1, OBJNULL}, {SYS_ "*ALIEN-DECLARATIONS*", SI_SPECIAL, NULL, -1, ECL_NIL}, @@ -1795,9 +1798,9 @@ cl_symbols[] = { {SYS_ "*CODE-WALKER*", SI_SPECIAL, NULL, -1, OBJNULL}, /* #if defined(HAVE_LIBFFI) */ -{SYS_ "CALL-CFUN", SI_ORDINARY, IF_DFFI(si_call_cfun), -1, OBJNULL}, +{SYS_ "CALL-CFUN", SI_ORDINARY, IF_DFFI(si_call_cfun), -5, OBJNULL}, {KEY_ "CALLBACK", KEYWORD, NULL, -1, OBJNULL}, -{SYS_ "MAKE-DYNAMIC-CALLBACK", SI_ORDINARY, IF_DFFI(si_make_dynamic_callback), -1, OBJNULL}, +{SYS_ "MAKE-DYNAMIC-CALLBACK", SI_ORDINARY, IF_DFFI(si_make_dynamic_callback), -5, OBJNULL}, {SYS_ "FREE-FFI-CLOSURE", SI_ORDINARY, IF_DFFI(si_free_ffi_closure), 1, OBJNULL}, /* #endif defined(HAVE_LIBFFI) */ {KEY_ "CDECL", KEYWORD, NULL, -1, OBJNULL}, @@ -1819,7 +1822,7 @@ cl_symbols[] = { {EXT_ "GET-FINALIZER", EXT_ORDINARY, si_get_finalizer, 1, OBJNULL}, {EXT_ "SET-FINALIZER", EXT_ORDINARY, si_set_finalizer, 2, OBJNULL}, -{SYS_ "WRONG-TYPE-ARGUMENT", SI_ORDINARY, si_wrong_type_argument, -1, OBJNULL}, +{SYS_ "WRONG-TYPE-ARGUMENT", SI_ORDINARY, si_wrong_type_argument, -3, OBJNULL}, {SYS_ "*CURRENT-FORM*", SI_SPECIAL, NULL, -1, OBJNULL}, @@ -1963,7 +1966,7 @@ cl_symbols[] = { {SYS_ "READ-OBJECT-OR-IGNORE", EXT_ORDINARY, si_read_object_or_ignore, 2, OBJNULL}, -{EXT_ "READTABLE-LOCK", EXT_ORDINARY, si_readtable_lock, -1, OBJNULL}, +{EXT_ "READTABLE-LOCK", EXT_ORDINARY, si_readtable_lock, -2, OBJNULL}, {SYS_ "+IO-SYNTAX-PROGV-LIST+", SI_CONSTANT, NULL, -1, OBJNULL}, {SYS_ "+ECL-SYNTAX-PROGV-LIST+", SI_CONSTANT, NULL, -1, OBJNULL}, @@ -2008,7 +2011,7 @@ cl_symbols[] = { {KEY_ "ENVIRON", KEYWORD, NULL, -1, OBJNULL}, /* external-process extension */ -{EXT_ "RUN-PROGRAM", EXT_ORDINARY, ECL_NAME(si_run_program), -1, OBJNULL}, +{EXT_ "RUN-PROGRAM", EXT_ORDINARY, ECL_NAME(si_run_program), -3, OBJNULL}, {EXT_ "MAKE-EXTERNAL-PROCESS", EXT_ORDINARY, NULL, -1, OBJNULL}, {EXT_ "EXTERNAL-PROCESS", EXT_ORDINARY, NULL, -1, OBJNULL}, @@ -2017,8 +2020,8 @@ cl_symbols[] = { {EXT_ "EXTERNAL-PROCESS-OUTPUT", EXT_ORDINARY, NULL, -1, OBJNULL}, {EXT_ "EXTERNAL-PROCESS-ERROR-STREAM", EXT_ORDINARY, NULL, -1, OBJNULL}, {EXT_ "EXTERNAL-PROCESS-STATUS", EXT_ORDINARY, NULL, -1, OBJNULL}, -{EXT_ "EXTERNAL-PROCESS-WAIT", EXT_ORDINARY, NULL, -1, OBJNULL}, -{EXT_ "TERMINATE-PROCESS", EXT_ORDINARY, ECL_NAME(si_terminate_process), -1, OBJNULL}, +{EXT_ "EXTERNAL-PROCESS-WAIT", EXT_ORDINARY, NULL, -2, OBJNULL}, +{EXT_ "TERMINATE-PROCESS", EXT_ORDINARY, ECL_NAME(si_terminate_process), -2, OBJNULL}, {KEY_ "RUNNING", KEYWORD, NULL, -1, OBJNULL}, {KEY_ "EXITED", KEYWORD, NULL, -1, OBJNULL}, @@ -2081,7 +2084,7 @@ cl_symbols[] = { {EXT_ "COMPILER-TYPECASE", EXT_ORDINARY, NULL, -1, OBJNULL}, -{SYS_ "ASSERT-FAILURE", SI_ORDINARY, ECL_NAME(si_assert_failure), -1, OBJNULL}, +{SYS_ "ASSERT-FAILURE", SI_ORDINARY, ECL_NAME(si_assert_failure), -2, OBJNULL}, {SYS_ "CCASE-ERROR", SI_ORDINARY, ECL_NAME(si_ccase_error), 3, OBJNULL}, {SYS_ "ECASE-ERROR", SI_ORDINARY, ECL_NAME(si_ecase_error), 2, OBJNULL}, {SYS_ "ETYPECASE-ERROR", SI_ORDINARY, ECL_NAME(si_etypecase_error), 2, OBJNULL}, @@ -2172,7 +2175,7 @@ cl_symbols[] = { {KEY_ "SHARED", KEYWORD, NULL, -1, OBJNULL}, {KEY_ "PRIVATE", KEYWORD, NULL, -1, OBJNULL}, -{EXT_ "MMAP", EXT_ORDINARY, si_mmap, -1, OBJNULL}, +{EXT_ "MMAP", EXT_ORDINARY, si_mmap, -2, OBJNULL}, {EXT_ "MUNMAP", EXT_ORDINARY, si_munmap, 1, OBJNULL}, {EXT_ "MMAP-ARRAY", EXT_ORDINARY, si_mmap_array, 1, OBJNULL}, @@ -2276,8 +2279,8 @@ cl_symbols[] = { {EXT_ "ARRAY-INDEX-P", EXT_ORDINARY, ECL_NAME(si_array_index_p), 1, OBJNULL}, {EXT_ "SEQUENCE-STREAM", EXT_ORDINARY, NULL, -1, OBJNULL}, -{EXT_ "MAKE-SEQUENCE-INPUT-STREAM", EXT_ORDINARY, si_make_sequence_input_stream, -1, OBJNULL}, -{EXT_ "MAKE-SEQUENCE-OUTPUT-STREAM", EXT_ORDINARY, si_make_sequence_output_stream, -1, OBJNULL}, +{EXT_ "MAKE-SEQUENCE-INPUT-STREAM", EXT_ORDINARY, si_make_sequence_input_stream, -2, OBJNULL}, +{EXT_ "MAKE-SEQUENCE-OUTPUT-STREAM", EXT_ORDINARY, si_make_sequence_output_stream, -2, OBJNULL}, {EXT_ "CHMOD", EXT_ORDINARY, si_chmod, 2, OBJNULL}, @@ -2290,7 +2293,7 @@ cl_symbols[] = { {SYS_ "REPORT-FUNCTION", SI_ORDINARY, NULL, -1, OBJNULL}, -{SYS_ "DO-DEFSETF", SI_ORDINARY, ECL_NAME(si_do_defsetf), -1, OBJNULL}, +{SYS_ "DO-DEFSETF", SI_ORDINARY, ECL_NAME(si_do_defsetf), -3, OBJNULL}, {SYS_ "DO-DEFINE-SETF-METHOD", SI_ORDINARY, ECL_NAME(si_do_define_setf_method), 2, OBJNULL}, {SYS_ "SETF-DEFINITION", SI_ORDINARY, ECL_NAME(si_setf_definition), 2, OBJNULL}, @@ -2400,8 +2403,8 @@ cl_symbols[] = { {SYS_ "BIND-SIMPLE-RESTARTS", SI_ORDINARY, ECL_NAME(si_bind_simple_restarts), 2, OBJNULL}, {SYS_ "BIND-SIMPLE-HANDLERS", SI_ORDINARY, ECL_NAME(si_bind_simple_handlers), 2, OBJNULL}, -{EXT_ "CONSTANT-FORM-VALUE", EXT_ORDINARY, si_constant_form_value, -1, OBJNULL}, -{EXT_ "CONSTANTP-INNER", EXT_ORDINARY, si_constantp_inner, -1, OBJNULL}, +{EXT_ "CONSTANT-FORM-VALUE", EXT_ORDINARY, si_constant_form_value, -2, OBJNULL}, +{EXT_ "CONSTANTP-INNER", EXT_ORDINARY, si_constantp_inner, -2, OBJNULL}, {SYS_ "MAKE-BACKQ-VECTOR", SI_ORDINARY, si_make_backq_vector, 3, OBJNULL}, {SYS_ "RATIOP", SI_ORDINARY, ECL_NAME(si_ratiop), 1, OBJNULL}, diff --git a/src/cmp/cmpcall.lsp b/src/cmp/cmpcall.lsp index acb408fd7..3dffd09c4 100644 --- a/src/cmp/cmpcall.lsp +++ b/src/cmp/cmpcall.lsp @@ -177,11 +177,10 @@ (wt-h1 "cl_object")) (wt-h1 ");")) (progn - (wt-nl-h "#ifdef __cplusplus") - (wt-nl-h "extern cl_object " fun-c-name "(...);") - (wt-nl-h "#else") - (wt-nl-h "extern cl_object " fun-c-name "();") - (wt-nl-h "#endif"))) + (wt-nl-h "extern cl_object " fun-c-name "(cl_narg") + (dotimes (i (min minarg si:c-arguments-limit)) + (wt-h1 ",cl_object")) + (wt-h1 ",...);"))) (setf (gethash fun-c-name *compiler-declared-globals*) 1)))) (let ((fun (make-fun :name fname :global t :cfun fun-c-name :lambda 'NIL :minarg minarg :maxarg maxarg))) diff --git a/src/cmp/cmplam.lsp b/src/cmp/cmplam.lsp index 5cb9aadea..27099093a 100644 --- a/src/cmp/cmplam.lsp +++ b/src/cmp/cmplam.lsp @@ -310,9 +310,9 @@ The function thus belongs to the type of functions that ecl_make_cfun accepts." (maxarg call-arguments-limit)) (destructuring-bind (requireds optionals rest key-flag keywords a-o-k) (c1form-arg 0 lambda) + (setf minarg (length requireds)) (when (and (null rest) (not key-flag) (not a-o-k)) - (setf minarg (length requireds) - maxarg (+ minarg (/ (length optionals) 3))))) + (setf maxarg (+ minarg (/ (length optionals) 3))))) (values minarg maxarg))) #| Steps: diff --git a/src/cmp/cmpspecial.lsp b/src/cmp/cmpspecial.lsp index a9b5094e6..7dc2f3d10 100644 --- a/src/cmp/cmpspecial.lsp +++ b/src/cmp/cmpspecial.lsp @@ -184,10 +184,11 @@ (cond ((eq closure 'CLOSURE) (wt "ecl_make_cclosure_va((cl_objectfn)" cfun "," (environment-accessor fun) - ",Cblock)")) + ",Cblock," (min (fun-minarg fun) si:c-arguments-limit) ")")) ((eq closure 'LEXICAL) (baboon :format-control "wt-make-closure: lexical closure detected.")) ((setf narg (fun-fixed-narg fun)) ; empty environment fixed number of args (wt "ecl_make_cfun((cl_objectfn_fixed)" cfun ",ECL_NIL,Cblock," narg ")")) (t ; empty environment variable number of args - (wt "ecl_make_cfun_va((cl_objectfn)" cfun ",ECL_NIL,Cblock)"))))) + (wt "ecl_make_cfun_va((cl_objectfn)" cfun ",ECL_NIL,Cblock," + (min (fun-minarg fun) si:c-arguments-limit) ")"))))) diff --git a/src/cmp/cmptop.lsp b/src/cmp/cmptop.lsp index 23fa7fb18..e0e4cda3f 100644 --- a/src/cmp/cmptop.lsp +++ b/src/cmp/cmptop.lsp @@ -886,8 +886,8 @@ (if (zerop n-cfuns) (wt-nl-h "#define compiler_cfuns NULL") (progn - (format stream "~%static const struct ecl_cfun compiler_cfuns[] = {~ -~%~t/*t,m,narg,padding,name,block,entry*/"); + (format stream "~%static const struct ecl_cfunfixed compiler_cfuns[] = {~ +~%~t/*t,m,narg,padding,name=function-location,block=name-location,entry,entry_fixed,file,file_position*/") (loop for (loc fname-loc fun) in (nreverse *global-cfuns-array*) do (let* ((cfun (fun-cfun fun)) (minarg (fun-minarg fun)) @@ -895,8 +895,8 @@ (narg (if (and (= minarg maxarg) (<= maxarg si:c-arguments-limit)) maxarg - -1))) - (format stream "~%{0,0,~D,0,ecl_make_fixnum(~D),ecl_make_fixnum(~D),(cl_objectfn)~A,ECL_NIL,ecl_make_fixnum(~D)}," + (1- (- (min minarg si:c-arguments-limit)))))) + (format stream "~%{0,0,~D,0,ecl_make_fixnum(~D),ecl_make_fixnum(~D),(cl_objectfn)~A,NULL,ECL_NIL,ecl_make_fixnum(~D)}," narg (vv-location loc) (vv-location fname-loc) diff --git a/src/cmp/proclamations.lsp b/src/cmp/proclamations.lsp index fd353296b..f13e5c2dd 100644 --- a/src/cmp/proclamations.lsp +++ b/src/cmp/proclamations.lsp @@ -196,6 +196,11 @@ (proclamation ext:constant-form-value (t &optional environment) t) (proclamation ext:constantp-inner (t &optional environment) gen-bool) +(proclamation si::remove-documentation (t) t) +(proclamation si::find-declarations (t &optional gen-bool) t) +(proclamation si::search-keyword (t t) t) +(proclamation si::check-keyword (list list &optional gen-bool) t) + ;;; ;;; 4. TYPES AND CLASSES ;;; @@ -313,6 +318,12 @@ (proclamation clos:extract-lambda-list (list) list) #+clos (proclamation clos:extract-specializer-names (list) list) +#+clos +(proclamation clos::install-method (t t t t t &rest t) t) +#+clos +(proclamation clos::find-slot-definition (t t) t) +#+clos +(proclamation clos::ensure-class (t &rest t) t) #+(and threads clos) (proclamation mp::compare-and-swap-standard-instance (ext:instance t t t) t) #+(and threads clos) (proclamation mp::compare-and-swap-slot-value (ext:instance symbol t t) t) @@ -332,6 +343,8 @@ (proclamation si:structure-set (structure-object t fixnum t) t) (proclamation si:structurep (t) gen-bool :predicate) (proclamation si:structure-subtype-p (t t) gen-bool :predicate) +(proclamation si::define-structure (t t t t t t t t t t t t t t t) t) +(proclamation si::structure-type-error (t t t t) t) #+threads (proclamation mp:compare-and-swap-structure (structure-object t fixnum t t) t) @@ -452,6 +465,7 @@ (proclamation si:select-package (package-designator) package) (proclamation si:package-hash-tables (package-designator) (values hash-table hash-table list) :reader) +(proclamation si::packages-iterator (t list gen-bool) function) (proclamation ext:package-lock (package-designator gen-bool) package) (proclamation ext:package-locked-p (package-designator) boolean :no-side-effects) (proclamation ext:package-local-nicknames @@ -992,6 +1006,7 @@ (t sequence sequence-index (or null sequence-index)) (values fixnum fixnum fixnum) :no-side-effects) (proclamation si::sequence-count ((or null integer)) fixnum :no-side-effects) +(proclamation si::coerce-to-list (sequence) list) ;;; ;;; 18. HASH TABLES @@ -1222,6 +1237,10 @@ ;; Slot accessor: ;; (proclamation print-not-readable-object (condition) t) +;; ECL extensions: +(proclamation si::pprint-logical-block-helper (t t t string gen-bool string) t) +(proclamation si::pprint-pop-helper (t t stream) t) + ;;; ;;; 23. READER ;;; @@ -1383,6 +1402,10 @@ (proclamation si:unbound () t :pure) (proclamation si:traced-old-definition (t) t :no-side-effects) +(proclamation si::expand-set-documentation (t t t) t) +(proclamation si::set-documentation (t t t) t) +(proclamation si::get-documentation (t t) t) + #+clos (proclamation si:allocate-raw-instance (t t fixnum) ext:instance) #+clos diff --git a/src/h/external.h b/src/h/external.h index ef94d26cd..0aff0c870 100755 --- a/src/h/external.h +++ b/src/h/external.h @@ -283,14 +283,14 @@ extern ECL_API cl_object si_make_weak_pointer(cl_object o); extern ECL_API cl_object si_weak_pointer_value(cl_object o); #else extern ECL_API cl_object si_allocate _ECL_ARGS((cl_narg narg, cl_object type, cl_object qty, ...)); -extern ECL_API cl_object si_maximum_allocatable_pages _ECL_ARGS((cl_narg narg, cl_object type)); -extern ECL_API cl_object si_allocated_pages _ECL_ARGS((cl_narg narg, cl_object type)); +extern ECL_API cl_object si_maximum_allocatable_pages _ECL_ARGS((cl_narg narg, cl_object type, ...)); +extern ECL_API cl_object si_allocated_pages _ECL_ARGS((cl_narg narg, cl_object type, ...)); extern ECL_API cl_object si_alloc_contpage _ECL_ARGS((cl_narg narg, cl_object qty, ...)); -extern ECL_API cl_object si_allocated_contiguous_pages _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_maximum_contiguous_pages _ECL_ARGS((cl_narg narg)); +extern ECL_API cl_object si_allocated_contiguous_pages _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_maximum_contiguous_pages _ECL_ARGS((cl_narg narg, ...)); extern ECL_API cl_object si_allocate_contiguous_pages _ECL_ARGS((cl_narg narg, cl_object qty, ...)); -extern ECL_API cl_object si_get_hole_size _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_set_hole_size _ECL_ARGS((cl_narg narg, cl_object size)); +extern ECL_API cl_object si_get_hole_size _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_set_hole_size _ECL_ARGS((cl_narg narg, cl_object size, ...)); extern ECL_API cl_object si_ignore_maximum_pages _ECL_ARGS((cl_narg narg, ...)); extern ECL_API void *ecl_alloc(cl_index n); extern ECL_API void *ecl_alloc_align(cl_index size, cl_index align); @@ -431,12 +431,12 @@ extern ECL_API cl_object cl_function_lambda_expression(cl_object fun); extern ECL_API cl_object si_compiled_function_file(cl_object fun); extern ECL_API cl_object ecl_make_cfun(cl_objectfn_fixed c_function, cl_object name, cl_object block, int narg); -extern ECL_API cl_object ecl_make_cfun_va(cl_objectfn c_function, cl_object name, cl_object block); -extern ECL_API cl_object ecl_make_cclosure_va(cl_objectfn c_function, cl_object env, cl_object block); +extern ECL_API cl_object ecl_make_cfun_va(cl_objectfn c_function, cl_object name, cl_object block, int narg_fixed); +extern ECL_API cl_object ecl_make_cclosure_va(cl_objectfn c_function, cl_object env, cl_object block, int narg_fixed); extern ECL_API void ecl_def_c_function(cl_object sym, cl_objectfn_fixed c_function, int narg); extern ECL_API void ecl_def_c_macro(cl_object sym, cl_objectfn_fixed c_function, int narg); -extern ECL_API void ecl_def_c_macro_va(cl_object sym, cl_objectfn c_function); -extern ECL_API void ecl_def_c_function_va(cl_object sym, cl_objectfn c_function); +extern ECL_API void ecl_def_c_macro_va(cl_object sym, cl_objectfn c_function, int narg_fixed); +extern ECL_API void ecl_def_c_function_va(cl_object sym, cl_objectfn c_function, int narg_fixed); extern ECL_API void ecl_set_function_source_file_info(cl_object fun, cl_object source, cl_object position); extern ECL_API void ecl_cmp_defmacro(cl_object data); extern ECL_API void ecl_cmp_defun(cl_object data); @@ -762,10 +762,10 @@ extern ECL_API cl_object cl_format _ECL_ARGS((cl_narg narg, cl_object stream, cl /* gbc.c */ #if !defined(GBC_BOEHM) -extern ECL_API cl_object si_room_report _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_reset_gc_count _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_gc_time _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_gc(cl_object area); +extern ECL_API cl_object si_room_report _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_reset_gc_count _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_gc_time _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_gc(cl_object area, ...); #define GC_enabled() GC_enable #define GC_enable() GC_enable = TRUE; #define GC_disable() GC_enable = FALSE; @@ -1503,9 +1503,9 @@ extern ECL_API cl_object si_print_unreadable_object_function(cl_object o, cl_obj /* profile.c */ #ifdef PROFILE -extern ECL_API cl_object si_profile _ECL_ARGS((cl_narg narg, cl_object scale, cl_object start_address)); -extern ECL_API cl_object si_clear_profile _ECL_ARGS((cl_narg narg)); -extern ECL_API cl_object si_display_profile _ECL_ARGS((cl_narg narg)); +extern ECL_API cl_object si_profile _ECL_ARGS((cl_narg narg, cl_object scale, cl_object start_address, ...)); +extern ECL_API cl_object si_clear_profile _ECL_ARGS((cl_narg narg, ...)); +extern ECL_API cl_object si_display_profile _ECL_ARGS((cl_narg narg, ...)); extern ECL_API int total_ticks(unsigned short *aar, unsigned int dim); extern ECL_API int init_profile(void); #endif @@ -2236,7 +2236,7 @@ extern ECL_API cl_object clos_method_specializers _ECL_ARGS((cl_narg narg, cl_ob extern ECL_API cl_object cl_method_qualifiers _ECL_ARGS((cl_narg narg, cl_object V1, ...)); extern ECL_API cl_object clos_method_function _ECL_ARGS((cl_narg narg, cl_object V1, ...)); extern ECL_API cl_object clos_method_plist _ECL_ARGS((cl_narg narg, cl_object V1, ...)); -extern ECL_API cl_object clos_install_method _ECL_ARGS((cl_narg narg, cl_object V1, cl_object V2, cl_object V3, cl_object V4, cl_object V5, cl_object V6, cl_object V7, ...)); +extern ECL_API cl_object clos_install_method _ECL_ARGS((cl_narg narg, cl_object V1, cl_object V2, cl_object V3, cl_object V4, cl_object V5, ...)); #endif diff --git a/src/h/internal.h b/src/h/internal.h index 38872bffb..2c6c7befc 100755 --- a/src/h/internal.h +++ b/src/h/internal.h @@ -299,8 +299,8 @@ extern void ecl_reconstruct_serialized_hashtable(cl_object h); #define GFUN_COMB(x) ((x)->instance.slots[2]) extern cl_object FEnot_funcallable_vararg(cl_narg narg, ...); -extern cl_object ecl_slot_reader_dispatch(cl_narg narg, cl_object instance); -extern cl_object ecl_slot_writer_dispatch(cl_narg narg, cl_object value, cl_object instance); +extern cl_object ecl_slot_reader_dispatch(cl_narg narg, ... /* cl_object instance */); +extern cl_object ecl_slot_writer_dispatch(cl_narg narg, ... /* cl_object value, cl_object instance */); /* load.d */ diff --git a/src/h/legacy.h b/src/h/legacy.h index f524cd3c4..e4f488bfd 100644 --- a/src/h/legacy.h +++ b/src/h/legacy.h @@ -45,17 +45,6 @@ #define big_size big_num->_mp_size #define big_limbs big_num->_mp_d -#define cl_def_c_function_va(sym,function) ecl_def_c_function_va(sym,function) -#define cl_def_c_function(sym,function,narg) ecl_def_c_function(sym,function,narg) -#define cl_def_c_macro(sym,function,narg) { \ - int n = (narg); \ - if (n < 0) \ - ecl_def_c_macro_va((sym),(function)); \ - else \ - ecl_def_c_macro((sym),(function),n); } -#define cl_make_cfun(fun,name,block,narg) ecl_make_cfun(fun,name,block,narg) -#define cl_make_cfun_va(fun,name,block) ecl_make_cfun_va(fun,name,block) -#define cl_make_cclosure_va(fun,name,block) ecl_make_cclosure_va(fun,name,block) #define si_bc_file(o) si_compiled_function_file(o) #define ARRAYP ECL_ARRAYP #define VECTORP ECL_VECTORP diff --git a/src/h/object.h b/src/h/object.h index 9ca91d9ea..661265c0a 100644 --- a/src/h/object.h +++ b/src/h/object.h @@ -736,7 +736,7 @@ struct ecl_codeblock { cl_object name; cl_object links; /* list of symbols with linking calls */ cl_index cfuns_size; /* number of functions defined */ - const struct ecl_cfun *cfuns; + const struct ecl_cfunfixed *cfuns; cl_object source; /* common debug information for this block */ cl_object refs; /* reference counter for the library */ cl_object error; /* error message when loading */ @@ -763,16 +763,26 @@ struct ecl_bclosure { }; struct ecl_cfun { /* compiled function header */ - _ECL_HDR1(narg); + _ECL_HDR1(narg); /* number of fixed arguments */ cl_object name; /* compiled function name */ cl_object block; /* descriptor of C code block for GC */ cl_objectfn entry; /* entry address */ +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + /* Some architectures (i.e. ARM64 on iOS) use a different + * calling convention for the fixed and variadic arguments of + * a variadic function. The only portable way to allow for + * function redefinitions during runtime in these + * architectures is to set entry to a dispatch function + * calling entry_variadic with the correct calling conventions + * (see cfun.d). -- mg 2019-12-02 */ + cl_objectfn entry_variadic; +#endif cl_object file; /* file where it was defined... */ cl_object file_position;/* and where it was created */ }; struct ecl_cfunfixed { /* compiled function header */ - _ECL_HDR1(narg); + _ECL_HDR1(narg); /* number of arguments */ cl_object name; /* compiled function name */ cl_object block; /* descriptor of C code block for GC */ cl_objectfn entry; /* entry address (must match the position of @@ -783,11 +793,14 @@ struct ecl_cfunfixed { /* compiled function header */ }; struct ecl_cclosure { /* compiled closure header */ - _ECL_HDR; + _ECL_HDR1(narg); /* number of fixed arguments */ cl_object env; /* environment */ cl_object block; /* descriptor of C code block for GC */ cl_objectfn entry; /* entry address (must match the position of * the equivalent field in cfun) */ +#ifdef ECL_C_COMPATIBLE_VARIADIC_DISPATCH + cl_objectfn entry_variadic; /* see struct ecl_cfun above */ +#endif cl_object file; /* file where it was defined... */ cl_object file_position;/* and where it was created */ };