changeset 60500:718a981b5dd3

(Writing Emacs Primitives): Update `or' example. Update limit on # args of subr.
author Richard M. Stallman <rms@gnu.org>
date Tue, 08 Mar 2005 03:06:53 +0000
parents a33defc96586
children ac9848689bc2
files lispref/internals.texi
diffstat 1 files changed, 7 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/lispref/internals.texi	Tue Mar 08 03:06:04 2005 +0000
+++ b/lispref/internals.texi	Tue Mar 08 03:06:53 2005 +0000
@@ -477,28 +477,22 @@
   (args)
      Lisp_Object args;
 @{
-  register Lisp_Object val;
-  Lisp_Object args_left;
+  register Lisp_Object val = Qnil;
   struct gcpro gcpro1;
 @end group
 
 @group
-  if (NILP (args))
-    return Qnil;
-
-  args_left = args;
-  GCPRO1 (args_left);
+  GCPRO1 (args);
 @end group
 
 @group
-  do
+  while (CONSP (args))
     @{
-      val = Feval (Fcar (args_left));
+      val = Feval (XCAR (args));
       if (!NILP (val))
-        break;
-      args_left = Fcdr (args_left);
+	break;
+      args = XCDR (args);
     @}
-  while (!NILP (args_left));
 @end group
 
 @group
@@ -549,7 +543,7 @@
 @code{MANY}, indicating an unlimited number of evaluated arguments (the
 equivalent of @code{&rest}).  Both @code{UNEVALLED} and @code{MANY} are
 macros.  If @var{max} is a number, it may not be less than @var{min} and
-it may not be greater than seven.
+it may not be greater than eight.
 
 @item interactive
 This is an interactive specification, a string such as might be used as