Mercurial > hg > xemacs-beta
diff src/alloc.c @ 1737:68ed93de81b7
[xemacs-hg @ 2003-10-10 11:50:56 by stephent]
E Benson bytecomp patch <87oewpmi1m.fsf_-_@tleepslib.sk.tsukuba.ac.jp>
author | stephent |
---|---|
date | Fri, 10 Oct 2003 11:51:05 +0000 |
parents | a8d8f419b459 |
children | 9ddedfc70c4a |
line wrap: on
line diff
--- a/src/alloc.c Fri Oct 10 10:51:11 2003 +0000 +++ b/src/alloc.c Fri Oct 10 11:51:05 2003 +0000 @@ -1505,6 +1505,7 @@ f->instructions = Qzero; f->constants = Qzero; f->arglist = Qnil; + f->args = f->max_args = f->min_args = f->args_in_array = 0; f->doc_and_interactive = Qnil; #ifdef COMPILED_FUNCTION_ANNOTATION_HACK f->annotated = Qnil; @@ -1559,48 +1560,6 @@ } f->arglist = arglist; - { - int minargs = 0, maxargs = 0, totalargs = 0; - int optional_p = 0, rest_p = 0, i = 0; - { - LIST_LOOP_2 (arg, arglist) - { - if (EQ (arg, Qand_optional)) - optional_p = 1; - else if (EQ (arg, Qand_rest)) - rest_p = 1; - else - { - if (rest_p) - { - maxargs = MANY; - totalargs++; - break; - } - if (!optional_p) - minargs++; - maxargs++; - totalargs++; - } - } - } - - if (totalargs) - f->args = xnew_array (Lisp_Object, totalargs); - - { - LIST_LOOP_2 (arg, arglist) - { - if (!EQ (arg, Qand_optional) && !EQ (arg, Qand_rest)) - f->args[i++] = arg; - } - } - - f->max_args = maxargs; - f->min_args = minargs; - f->args_in_array = totalargs; - } - /* `instructions' is a string or a cons (string . int) for a lazy-loaded function. */ if (CONSP (instructions))