diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2021-09-17 18:50:21 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2021-09-17 18:50:21 +0000 |
commit | dbdb61b9944a17a2613b7f37885bfd4c68e3fa1c (patch) | |
tree | 86e9d3c809304755f941755a394c9d5fbf107096 /mandoc_malloc.3 | |
parent | e85894df93051f80f97f6c5c18cd8a4232e2ea3a (diff) | |
download | mandoc-dbdb61b9944a17a2613b7f37885bfd4c68e3fa1c.tar.gz |
document mandoc_recallocarray(3);
patch found in my tree, apparently forgotten years ago
Diffstat (limited to 'mandoc_malloc.3')
-rw-r--r-- | mandoc_malloc.3 | 37 |
1 files changed, 28 insertions, 9 deletions
diff --git a/mandoc_malloc.3 b/mandoc_malloc.3 index 98444224..84e21334 100644 --- a/mandoc_malloc.3 +++ b/mandoc_malloc.3 @@ -22,6 +22,7 @@ .Nm mandoc_realloc , .Nm mandoc_reallocarray , .Nm mandoc_calloc , +.Nm mandoc_recallocarray , .Nm mandoc_strdup , .Nm mandoc_strndup , .Nm mandoc_asprintf @@ -49,6 +50,13 @@ .Fa "size_t nmemb" .Fa "size_t size" .Fc +.Ft "void *" +.Fo mandoc_recallocarray +.Fa "void *ptr" +.Fa "size_t oldnmemb" +.Fa "size_t nmemb" +.Fa "size_t size" +.Fc .Ft "char *" .Fo mandoc_strdup .Fa "const char *s" @@ -82,12 +90,15 @@ The function .Fn mandoc_malloc allocates one new object, leaving the memory uninitialized. The functions -.Fn mandoc_realloc +.Fn mandoc_realloc , +.Fn mandoc_reallocarray , and -.Fn mandoc_reallocarray +.Fn mandoc_recallocarray change the size of an existing object or array, possibly moving it. When shrinking the size, existing data is truncated; when growing, -the additional memory is not initialized. +only +.Fn mandoc_recallocarray +initializes the new elements to zero. The function .Fn mandoc_calloc allocates a new array, initializing it to zero. @@ -99,6 +110,9 @@ The argument .Fa nmemb is the new number of objects in the array. The argument +.Fa oldnmemb +is the number of objects in the array before the call. +The argument .Fa ptr is a pointer to the existing object or array to be resized; if it is .Dv NULL , @@ -168,9 +182,13 @@ is a widespread extension that first appeared in the GNU C library. The function .Fn reallocarray is an extension that first appeared in -.Ox 5.6 . -If it is not provided by the operating system, the mandoc build system -uses a bundled portable implementation. +.Ox 5.6 , +and +.Fn recallocarray +in +.Ox 6.1 . +If these two are not provided by the operating system, +the mandoc build system uses bundled portable implementations. .Sh HISTORY The functions .Fn mandoc_malloc , @@ -181,11 +199,12 @@ and have been available since mandoc 1.9.12, .Fn mandoc_strndup since 1.11.5, -and .Fn mandoc_asprintf -and +since 1.12.4, .Fn mandoc_reallocarray -since 1.12.4 and 1.13.0. +since 1.13.0, and +.Fn mandoc_recallocarray +since 1.14.2. .Sh AUTHORS .An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .An Ingo Schwarze Aq Mt schwarze@openbsd.org |