comparison src/alloc.c @ 9953:e0672d4cf470

(Fmake_list, Fmake_vector, Fmake_string): Use CHECK_NATNUM instead of its expansion.
author Karl Heuer <kwzh@gnu.org>
date Wed, 16 Nov 1994 00:30:25 +0000
parents c189487b08dd
children 943a61c764a5
comparison
equal deleted inserted replaced
9952:9daedd94a204 9953:e0672d4cf470
568 register Lisp_Object length, init; 568 register Lisp_Object length, init;
569 { 569 {
570 register Lisp_Object val; 570 register Lisp_Object val;
571 register int size; 571 register int size;
572 572
573 if (!INTEGERP (length) || XINT (length) < 0) 573 CHECK_NATNUM (length, 0);
574 length = wrong_type_argument (Qnatnump, length); 574 size = XFASTINT (length);
575 size = XINT (length);
576 575
577 val = Qnil; 576 val = Qnil;
578 while (size-- > 0) 577 while (size-- > 0)
579 val = Fcons (init, val); 578 val = Fcons (init, val);
580 return val; 579 return val;
592 { 591 {
593 register int sizei, index; 592 register int sizei, index;
594 register Lisp_Object vector; 593 register Lisp_Object vector;
595 register struct Lisp_Vector *p; 594 register struct Lisp_Vector *p;
596 595
597 if (!INTEGERP (length) || XINT (length) < 0) 596 CHECK_NATNUM (length, 0);
598 length = wrong_type_argument (Qnatnump, length); 597 sizei = XFASTINT (length);
599 sizei = XINT (length);
600 598
601 p = (struct Lisp_Vector *) xmalloc (sizeof (struct Lisp_Vector) + (sizei - 1) * sizeof (Lisp_Object)); 599 p = (struct Lisp_Vector *) xmalloc (sizeof (struct Lisp_Vector) + (sizei - 1) * sizeof (Lisp_Object));
602 VALIDATE_LISP_STORAGE (p, 0); 600 VALIDATE_LISP_STORAGE (p, 0);
603 601
604 XSETVECTOR (vector, p); 602 XSETVECTOR (vector, p);
883 Lisp_Object length, init; 881 Lisp_Object length, init;
884 { 882 {
885 register Lisp_Object val; 883 register Lisp_Object val;
886 register unsigned char *p, *end, c; 884 register unsigned char *p, *end, c;
887 885
888 if (!INTEGERP (length) || XINT (length) < 0) 886 CHECK_NATNUM (length, 0);
889 length = wrong_type_argument (Qnatnump, length);
890 CHECK_NUMBER (init, 1); 887 CHECK_NUMBER (init, 1);
891 val = make_uninit_string (XINT (length)); 888 val = make_uninit_string (XFASTINT (length));
892 c = XINT (init); 889 c = XINT (init);
893 p = XSTRING (val)->data; 890 p = XSTRING (val)->data;
894 end = p + XSTRING (val)->size; 891 end = p + XSTRING (val)->size;
895 while (p != end) 892 while (p != end)
896 *p++ = c; 893 *p++ = c;