Mercurial > emacs
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; |
