summaryrefslogtreecommitdiffstats
path: root/templates/man3/malloc.3.pot
diff options
context:
space:
mode:
Diffstat (limited to 'templates/man3/malloc.3.pot')
-rw-r--r--templates/man3/malloc.3.pot824
1 files changed, 824 insertions, 0 deletions
diff --git a/templates/man3/malloc.3.pot b/templates/man3/malloc.3.pot
new file mode 100644
index 00000000..24249228
--- /dev/null
+++ b/templates/man3/malloc.3.pot
@@ -0,0 +1,824 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2024-03-01 17:01+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "malloc"
+msgstr ""
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr ""
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"malloc, free, calloc, realloc, reallocarray - allocate and free dynamic "
+"memory"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "LIBRARY"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Standard C library (I<libc>, I<-lc>)"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SYNOPSIS"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<#include E<lt>stdlib.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<void *malloc(size_t >I<size>B<);>\n"
+"B<void free(void *_Nullable >I<ptr>B<);>\n"
+"B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
+"B<void *realloc(void *_Nullable >I<ptr>B<, size_t >I<size>B<);>\n"
+"B<void *reallocarray(void *_Nullable >I<ptr>B<, size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "B<reallocarray>():"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+" Since glibc 2.29:\n"
+" _DEFAULT_SOURCE\n"
+" glibc 2.28 and earlier:\n"
+" _GNU_SOURCE\n"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "malloc()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<malloc>() function allocates I<size> bytes and returns a pointer to "
+"the allocated memory. I<The memory is not initialized>. If I<size> is 0, "
+"then B<malloc>() returns a unique pointer value that can later be "
+"successfully passed to B<free>(). (See \"Nonportable behavior\" for "
+"portability issues.)"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "free()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<free>() function frees the memory space pointed to by I<ptr>, which "
+"must have been returned by a previous call to B<malloc>() or related "
+"functions. Otherwise, or if I<ptr> has already been freed, undefined "
+"behavior occurs. If I<ptr> is NULL, no operation is performed."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "calloc()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<calloc>() function allocates memory for an array of I<nmemb> elements "
+"of I<size> bytes each and returns a pointer to the allocated memory. The "
+"memory is set to zero. If I<nmemb> or I<size> is 0, then B<calloc>() "
+"returns a unique pointer value that can later be successfully passed to "
+"B<free>()."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the multiplication of I<nmemb> and I<size> would result in integer "
+"overflow, then B<calloc>() returns an error. By contrast, an integer "
+"overflow would not be detected in the following call to B<malloc>(), with "
+"the result that an incorrectly sized block of memory would be allocated:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "malloc(nmemb * size);\n"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "realloc()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<realloc>() function changes the size of the memory block pointed to "
+"by I<ptr> to I<size> bytes. The contents of the memory will be unchanged in "
+"the range from the start of the region up to the minimum of the old and new "
+"sizes. If the new size is larger than the old size, the added memory will "
+"I<not> be initialized."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If I<ptr> is NULL, then the call is equivalent to I<malloc(size)>, for all "
+"values of I<size>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If I<size> is equal to zero, and I<ptr> is not NULL, then the call is "
+"equivalent to I<free(ptr)> (but see \"Nonportable behavior\" for portability "
+"issues)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Unless I<ptr> is NULL, it must have been returned by an earlier call to "
+"B<malloc> or related functions. If the area pointed to was moved, a "
+"I<free(ptr)> is done."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "reallocarray()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<reallocarray>() function changes the size of (and possibly moves) "
+"the memory block pointed to by I<ptr> to be large enough for an array of "
+"I<nmemb> elements, each of which is I<size> bytes. It is equivalent to the "
+"call"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "realloc(ptr, nmemb * size);\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"However, unlike that B<realloc>() call, B<reallocarray>() fails safely in "
+"the case where the multiplication would overflow. If such an overflow "
+"occurs, B<reallocarray>() returns an error."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<malloc>(), B<calloc>(), B<realloc>(), and B<reallocarray>() functions "
+"return a pointer to the allocated memory, which is suitably aligned for any "
+"type that fits into the requested size or less. On error, these functions "
+"return NULL and set I<errno>. Attempting to allocate more than "
+"B<PTRDIFF_MAX> bytes is considered an error, as an object that large could "
+"cause later pointer subtraction to overflow."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The B<free>() function returns no value, and preserves I<errno>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<realloc>() and B<reallocarray>() functions return NULL if I<ptr> is "
+"not NULL and the requested size is zero; this is not considered an error. "
+"(See \"Nonportable behavior\" for portability issues.) Otherwise, the "
+"returned pointer may be the same as I<ptr> if the allocation was not moved "
+"(e.g., there was room to expand the allocation in-place), or different from "
+"I<ptr> if the allocation was moved to a new address. If these functions "
+"fail, the original block is left untouched; it is not freed or moved."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ERRORS"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<calloc>(), B<malloc>(), B<realloc>(), and B<reallocarray>() can fail with "
+"the following error:"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOMEM>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+msgid ""
+"Out of memory. Possibly, the application hit the B<RLIMIT_AS> or "
+"B<RLIMIT_DATA> limit described in B<getrlimit>(2). Another reason could be "
+"that the number of mappings created by the caller process exceeded the limit "
+"specified by I</proc/sys/vm/max_map_count>."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For an explanation of the terms used in this section, see B<attributes>(7)."
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Interface"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Attribute"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Value"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".na\n"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".nh\n"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<malloc>(),\n"
+"B<free>(),\n"
+"B<calloc>(),\n"
+"B<realloc>()"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Thread safety"
+msgstr ""
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "MT-Safe"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "STANDARDS"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<malloc>()"
+msgstr ""
+
+#. type: TQ
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<free>()"
+msgstr ""
+
+#. type: TQ
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<calloc>()"
+msgstr ""
+
+#. type: TQ
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<realloc>()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "C11, POSIX.1-2008."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<reallocarray>()"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "None."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "HISTORY"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "POSIX.1-2001, C89."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "glibc 2.26. OpenBSD 5.6, FreeBSD 11.0."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<malloc>() and related functions rejected sizes greater than "
+"B<PTRDIFF_MAX> starting in glibc 2.30."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "B<free>() preserved I<errno> starting in glibc 2.33."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"By default, Linux follows an optimistic memory allocation strategy. This "
+"means that when B<malloc>() returns non-NULL there is no guarantee that the "
+"memory really is available. In case it turns out that the system is out of "
+"memory, one or more processes will be killed by the OOM killer. For more "
+"information, see the description of I</proc/sys/vm/overcommit_memory> and I</"
+"proc/sys/vm/oom_adj> in B<proc>(5), and the Linux kernel source file "
+"I<Documentation/vm/overcommit-accounting.rst>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Normally, B<malloc>() allocates memory from the heap, and adjusts the size "
+"of the heap as required, using B<sbrk>(2). When allocating blocks of memory "
+"larger than B<MMAP_THRESHOLD> bytes, the glibc B<malloc>() implementation "
+"allocates the memory as a private anonymous mapping using B<mmap>(2). "
+"B<MMAP_THRESHOLD> is 128\\ kB by default, but is adjustable using "
+"B<mallopt>(3). Prior to Linux 4.7 allocations performed using B<mmap>(2) "
+"were unaffected by the B<RLIMIT_DATA> resource limit; since Linux 4.7, this "
+"limit is also enforced for allocations performed using B<mmap>(2)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"To avoid corruption in multithreaded applications, mutexes are used "
+"internally to protect the memory-management data structures employed by "
+"these functions. In a multithreaded application in which threads "
+"simultaneously allocate and free memory, there could be contention for these "
+"mutexes. To scalably handle memory allocation in multithreaded "
+"applications, glibc creates additional I<memory allocation arenas> if mutex "
+"contention is detected. Each arena is a large region of memory that is "
+"internally allocated by the system (using B<brk>(2) or B<mmap>(2)), and "
+"managed with its own mutexes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If your program uses a private memory allocator, it should do so by "
+"replacing B<malloc>(), B<free>(), B<calloc>(), and B<realloc>(). The "
+"replacement functions must implement the documented glibc behaviors, "
+"including I<errno> handling, size-zero allocations, and overflow checking; "
+"otherwise, other library routines may crash or operate incorrectly. For "
+"example, if the replacement I<free>() does not preserve I<errno>, then "
+"seemingly unrelated library routines may fail without having a valid reason "
+"in I<errno>. Private memory allocators may also need to replace other glibc "
+"functions; see \"Replacing malloc\" in the glibc manual for details."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Crashes in memory allocators are almost always related to heap corruption, "
+"such as overflowing an allocated chunk or freeing the same pointer twice."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<malloc>() implementation is tunable via environment variables; see "
+"B<mallopt>(3) for details."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Nonportable behavior"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The behavior of these functions when the requested size is zero is glibc "
+"specific; other implementations may return NULL without setting I<errno>, "
+"and portable POSIX programs should tolerate such behavior. See "
+"B<realloc>(3p)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX requires memory allocators to set I<errno> upon failure. However, the "
+"C standard does not require this, and applications portable to non-POSIX "
+"platforms should not assume this."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Portable programs should not use private memory allocators, as POSIX and the "
+"C standard do not allow replacement of B<malloc>(), B<free>(), B<calloc>(), "
+"and B<realloc>()."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"#include E<lt>err.hE<gt>\n"
+"#include E<lt>stddef.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"\\&\n"
+"#define MALLOCARRAY(n, type) ((type *) my_mallocarray(n, sizeof(type)))\n"
+"#define MALLOC(type) MALLOCARRAY(1, type)\n"
+"\\&\n"
+"static inline void *my_mallocarray(size_t nmemb, size_t size);\n"
+"\\&\n"
+"int\n"
+"main(void)\n"
+"{\n"
+" char *p;\n"
+"\\&\n"
+" p = MALLOCARRAY(32, char);\n"
+" if (p == NULL)\n"
+" err(EXIT_FAILURE, \"malloc\");\n"
+"\\&\n"
+" strlcpy(p, \"foo\", 32);\n"
+" puts(p);\n"
+"}\n"
+"\\&\n"
+"static inline void *\n"
+"my_mallocarray(size_t nmemb, size_t size)\n"
+"{\n"
+" return reallocarray(NULL, nmemb, size);\n"
+"}\n"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<valgrind>(1), B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), "
+"B<malloc_info>(3), B<malloc_trim>(3), B<malloc_usable_size>(3), "
+"B<mallopt>(3), B<mcheck>(3), B<mtrace>(3), B<posix_memalign>(3)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For details of the GNU C library implementation, see E<.UR https://"
+"sourceware.org/glibc/wiki/MallocInternals> E<.UE .>"
+msgstr ""
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr ""
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"B<void *malloc(size_t >I<size>B<);>\n"
+"B<void free(void >I<*ptr>B<);>\n"
+"B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
+"B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
+"B<void *reallocarray(void >I<*ptr>B<, size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+msgid ""
+"Out of memory. Possibly, the application hit the B<RLIMIT_AS> or "
+"B<RLIMIT_DATA> limit described in B<getrlimit>(2)."
+msgstr ""
+
+#. type: SH
+#: debian-bookworm
+#, no-wrap
+msgid "VERSIONS"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid "B<reallocarray>() was added in glibc 2.26."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"B<malloc>(), B<free>(), B<calloc>(), B<realloc>(): POSIX.1-2001, "
+"POSIX.1-2008, C99."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"B<reallocarray>() is a nonstandard extension that first appeared in OpenBSD "
+"5.6 and FreeBSD 11.0."
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-20"
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr ""
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-03-30"
+msgstr ""
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#include E<lt>err.hE<gt>\n"
+"#include E<lt>stddef.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define MALLOCARRAY(n, type) ((type *) my_mallocarray(n, sizeof(type)))\n"
+"#define MALLOC(type) MALLOCARRAY(1, type)\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "static inline void *my_mallocarray(size_t nmemb, size_t size);\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"int\n"
+"main(void)\n"
+"{\n"
+" char *p;\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" p = MALLOCARRAY(32, char);\n"
+" if (p == NULL)\n"
+" err(EXIT_FAILURE, \"malloc\");\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" strlcpy(p, \"foo\", 32);\n"
+" puts(p);\n"
+"}\n"
+msgstr ""
+
+#. type: Plain text
+#: opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"static inline void *\n"
+"my_mallocarray(size_t nmemb, size_t size)\n"
+"{\n"
+" return reallocarray(NULL, nmemb, size);\n"
+"}\n"
+msgstr ""