From: Kenichi Handa Date: Tue, 26 Aug 1997 11:42:33 +0000 (+0000) Subject: (Feval): Handle a subr which takes 8 arguments. X-Git-Tag: emacs-20.1~404 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=166c822d2e424e0b067b709e8d07b8b89c39f2f0;p=emacs.git (Feval): Handle a subr which takes 8 arguments. (Ffuncall): Likewise. --- diff --git a/src/eval.c b/src/eval.c index 36fab7226b7..e3a49fd5727 100644 --- a/src/eval.c +++ b/src/eval.c @@ -1725,7 +1725,7 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, if (SUBRP (fun)) { Lisp_Object numargs; - Lisp_Object argvals[7]; + Lisp_Object argvals[8]; Lisp_Object args_left; register int i, maxargs; @@ -1819,6 +1819,12 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, argvals[6]); goto done; + case 8: + val = (*XSUBR (fun)->function) (argvals[0], argvals[1], argvals[2], + argvals[3], argvals[4], argvals[5], + argvals[6], argvals[7]); + goto done; + default: /* Someone has created a subr that takes more arguments than is supported by this code. We need to either rewrite the @@ -2458,9 +2464,16 @@ Thus, (funcall 'cons 'x 'y) returns (x . y).") internal_args[6]); goto done; + case 8: + val = (*XSUBR (fun)->function) (internal_args[0], internal_args[1], + internal_args[2], internal_args[3], + internal_args[4], internal_args[5], + internal_args[6], internal_args[7]); + goto done; + default: - /* If a subr takes more than 6 arguments without using MANY + /* If a subr takes more than 8 arguments without using MANY or UNEVALLED, we need to extend this function to support it. Until this is done, there is no way to call the function. */ abort ();