From 6d491d8ad9122891d1a48447e8c49702eb678921 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 17 Feb 2000 19:39:46 +0000 Subject: import newlib-2000-02-17 snapshot --- newlib/libc/stdlib/calloc.c | 69 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 newlib/libc/stdlib/calloc.c (limited to 'newlib/libc/stdlib/calloc.c') diff --git a/newlib/libc/stdlib/calloc.c b/newlib/libc/stdlib/calloc.c new file mode 100644 index 00000000000..af9a4adc109 --- /dev/null +++ b/newlib/libc/stdlib/calloc.c @@ -0,0 +1,69 @@ +#ifdef MALLOC_PROVIDED +int _dummy_calloc = 1; +#else +/* +FUNCTION +<>---allocate space for arrays + +INDEX + calloc + +INDEX + _calloc_r + +ANSI_SYNOPSIS + #include + void *calloc(size_t <[n]>, size_t <[s]>); + void *calloc_r(void *<[reent]>, size_t , <[s]>); + +TRAD_SYNOPSIS + #include + char *calloc(<[n]>, <[s]>) + size_t <[n]>, <[s]>; + + char *_calloc_r(<[reent]>, <[n]>, <[s]>) + char *<[reent]>; + size_t <[n]>; + size_t <[s]>; + + + +DESCRIPTION +Use <> to request a block of memory sufficient to hold an +array of <[n]> elements, each of which has size <[s]>. + +The memory allocated by <> comes out of the same memory pool +used by <>, but the memory block is initialized to all zero +bytes. (To avoid the overhead of initializing the space, use +<> instead.) + +The alternate function <<_calloc_r>> is reentrant. +The extra argument <[reent]> is a pointer to a reentrancy structure. + +RETURNS +If successful, a pointer to the newly allocated space. + +If unsuccessful, <>. + +PORTABILITY +<> is ANSI. + +Supporting OS subroutines required: <>, <>, <>, +<>, <>, <>, <>. +*/ + +#include +#include + +#ifndef _REENT_ONLY + +_PTR +_DEFUN (calloc, (n, size), + size_t n _AND + size_t size) +{ + return _calloc_r (_REENT, n, size); +} + +#endif +#endif /* MALLOC_PROVIDED */ -- cgit v1.2.1