]> git.eshelyaron.com Git - emacs.git/commitdiff
(Fmake_list, Fmake_vector, Fmake_string): Use CHECK_NATNUM instead of its
authorKarl Heuer <kwzh@gnu.org>
Wed, 16 Nov 1994 00:30:25 +0000 (00:30 +0000)
committerKarl Heuer <kwzh@gnu.org>
Wed, 16 Nov 1994 00:30:25 +0000 (00:30 +0000)
expansion.

src/alloc.c

index fac718eb20cc47d1b10ef9b44614f13c93f18190..62f37d61bfa7f4e5293f84b392081d48622cdcfe 100644 (file)
@@ -570,9 +570,8 @@ DEFUN ("make-list", Fmake_list, Smake_list, 2, 2, 0,
   register Lisp_Object val;
   register int size;
 
-  if (!INTEGERP (length) || XINT (length) < 0)
-    length = wrong_type_argument (Qnatnump, length);
-  size = XINT (length);
+  CHECK_NATNUM (length, 0);
+  size = XFASTINT (length);
 
   val = Qnil;
   while (size-- > 0)
@@ -594,9 +593,8 @@ See also the function `vector'.")
   register Lisp_Object vector;
   register struct Lisp_Vector *p;
 
-  if (!INTEGERP (length) || XINT (length) < 0)
-    length = wrong_type_argument (Qnatnump, length);
-  sizei = XINT (length);
+  CHECK_NATNUM (length, 0);
+  sizei = XFASTINT (length);
 
   p = (struct Lisp_Vector *) xmalloc (sizeof (struct Lisp_Vector) + (sizei - 1) * sizeof (Lisp_Object));
   VALIDATE_LISP_STORAGE (p, 0);
@@ -885,10 +883,9 @@ Both LENGTH and INIT must be numbers.")
   register Lisp_Object val;
   register unsigned char *p, *end, c;
 
-  if (!INTEGERP (length) || XINT (length) < 0)
-    length = wrong_type_argument (Qnatnump, length);
+  CHECK_NATNUM (length, 0);
   CHECK_NUMBER (init, 1);
-  val = make_uninit_string (XINT (length));
+  val = make_uninit_string (XFASTINT (length));
   c = XINT (init);
   p = XSTRING (val)->data;
   end = p + XSTRING (val)->size;