]> git.eshelyaron.com Git - emacs.git/commitdiff
(Feval): Handle a subr which takes 8 arguments.
authorKenichi Handa <handa@m17n.org>
Tue, 26 Aug 1997 11:42:33 +0000 (11:42 +0000)
committerKenichi Handa <handa@m17n.org>
Tue, 26 Aug 1997 11:42:33 +0000 (11:42 +0000)
(Ffuncall): Likewise.

src/eval.c

index 36fab7226b7afd0ddec8e545afae3e93b2a6e3bb..e3a49fd5727fcd64d563d4b868ec09f3c70db59d 100644 (file)
@@ -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 ();