aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMattias Andrée <maandree@member.fsf.org>2016-01-01 17:55:37 +0100
committerMattias Andrée <maandree@member.fsf.org>2016-01-01 17:55:37 +0100
commit868abdea9811937039a1df84b15ad17f9b9c7a27 (patch)
treea7b98560d5eb155724663c4345283afbd68faa79 /include
parentm (diff)
downloadslibc-868abdea9811937039a1df84b15ad17f9b9c7a27.tar.gz
slibc-868abdea9811937039a1df84b15ad17f9b9c7a27.tar.bz2
slibc-868abdea9811937039a1df84b15ad17f9b9c7a27.tar.xz
extension: free will perserve errno
Signed-off-by: Mattias Andrée <maandree@member.fsf.org>
Diffstat (limited to 'include')
-rw-r--r--include/malloc.h4
-rw-r--r--include/slibc-alloc.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/include/malloc.h b/include/malloc.h
index 7478175..1735f46 100644
--- a/include/malloc.h
+++ b/include/malloc.h
@@ -172,6 +172,8 @@ void* realloc(void*, size_t)
/**
* Free a memory allocation.
*
+ * As a slibc extension, `errno` is guaranteed not to be set.
+ *
* @etymology (Free) allocated memory.
*
* @param ptr Pointer to the beginning of the memory allocation.
@@ -191,6 +193,8 @@ void free(void*)
* This function uses variadic arguments because there
* there are multiple conflicting specifications for `cfree`.
*
+ * As a slibc extension, `errno` is guaranteed not to be set.
+ *
* @param ptr Pointer to the beginning of the memory allocation.
* The process may crash if it does not point to the
* beginning of a memory allocation on the heap.
diff --git a/include/slibc-alloc.h b/include/slibc-alloc.h
index 928218d..7da40f9 100644
--- a/include/slibc-alloc.h
+++ b/include/slibc-alloc.h
@@ -128,6 +128,8 @@ enum falloc_mode
* This function is identical to `free`, except it is guaranteed not to
* override the memory segment with zeroes before freeing the allocation.
*
+ * `errno` is guaranteed not to be set.
+ *
* @etymology (Fast) variant of (`free`).
*
* @param segment The memory segment to free.
@@ -140,6 +142,8 @@ void fast_free(void*);
* This function is identical to `free`, except it is guaranteed to
* override the memory segment with zeroes before freeing the allocation.
*
+ * `errno` is guaranteed not to be set.
+ *
* @etymology (Secure) variant of (`free`).
*
* @param segment The memory segment to free.