aboutsummaryrefslogtreecommitdiffstats
path: root/libsimple/memalloc.h
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2024-08-18 09:41:45 +0200
committerMattias Andrée <maandree@kth.se>2024-08-18 09:41:45 +0200
commit8c76958b84e24e995d4ea16613bf525ca84727a1 (patch)
treecb8db13f84a13680287d0ab090ad731a3f54d076 /libsimple/memalloc.h
parentAdd arraydup macros (diff)
downloadlibsimple-8c76958b84e24e995d4ea16613bf525ca84727a1.tar.gz
libsimple-8c76958b84e24e995d4ea16613bf525ca84727a1.tar.bz2
libsimple-8c76958b84e24e995d4ea16613bf525ca84727a1.tar.xz
Add @since for definitions added in version 1.0 and 1.1
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'libsimple/memalloc.h')
-rw-r--r--libsimple/memalloc.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/libsimple/memalloc.h b/libsimple/memalloc.h
index 5b91a64..13ef889 100644
--- a/libsimple/memalloc.h
+++ b/libsimple/memalloc.h
@@ -1,6 +1,8 @@
/* See LICENSE file for copyright and license details. */
+/* @since 1.1 */
enum libsimple_memalloc_option {
+ /* @since 1.1 { */
LIBSIMPLE_MEMALLOC_END,
LIBSIMPLE_MEMALLOC_ZERO_INIT,
LIBSIMPLE_MEMALLOC_CONDITIONAL_ZERO_INIT,
@@ -16,9 +18,12 @@ enum libsimple_memalloc_option {
LIBSIMPLE_MEMALLOC_VA_PRODUCT_SIZE,
LIBSIMPLE_MEMALLOC_1_VA_PRODUCT_SIZE,
LIBSIMPLE_MEMALLOC_VA_LIST
+ /* @since 1.1 } */
};
+ /* @since 1.1 */
#define libsimple_arrayalloc_option libsimple_memalloc_option
+/* @since 1.1 { */
#define LIBSIMPLE_MEMALLOC_END LIBSIMPLE_MEMALLOC_END
#define LIBSIMPLE_MEMALLOC_ZERO_INIT LIBSIMPLE_MEMALLOC_ZERO_INIT
#define LIBSIMPLE_MEMALLOC_CONDITIONAL_ZERO_INIT LIBSIMPLE_MEMALLOC_CONDITIONAL_ZERO_INIT
@@ -34,7 +39,9 @@ enum libsimple_memalloc_option {
#define LIBSIMPLE_MEMALLOC_VA_PRODUCT_SIZE LIBSIMPLE_MEMALLOC_VA_PRODUCT_SIZE
#define LIBSIMPLE_MEMALLOC_1_VA_PRODUCT_SIZE LIBSIMPLE_MEMALLOC_1_VA_PRODUCT_SIZE
#define LIBSIMPLE_MEMALLOC_VA_LIST LIBSIMPLE_MEMALLOC_VA_LIST
+/* @since 1.1 } */
+/* @since 1.1 { */
#define LIBSIMPLE_ARRAYALLOC_END LIBSIMPLE_MEMALLOC_END
#define LIBSIMPLE_ARRAYALLOC_ZERO_INIT LIBSIMPLE_MEMALLOC_ZERO_INIT
#define LIBSIMPLE_ARRAYALLOC_CONDITIONAL_ZERO_INIT LIBSIMPLE_MEMALLOC_CONDITIONAL_ZERO_INIT
@@ -47,47 +54,58 @@ enum libsimple_memalloc_option {
#define LIBSIMPLE_ARRAYALLOC_VA_PRODUCT_SIZE LIBSIMPLE_MEMALLOC_VA_PRODUCT_SIZE
#define LIBSIMPLE_ARRAYALLOC_1_VA_PRODUCT_SIZE LIBSIMPLE_MEMALLOC_1_VA_PRODUCT_SIZE
#define LIBSIMPLE_ARRAYALLOC_VA_LIST LIBSIMPLE_MEMALLOC_VA_LIST
+/* @since 1.1 } */
+/* @since 1.1 */
#define libsimple_varrayalloc(TYPE, N, AP)\
libsimple_memalloc(N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
LIBSIMPLE_MEMALLOC_VA_LIST, AP, LIBSIMPLE_MEMALLOC_END)
+/* @since 1.1 */
#define libsimple_evarrayalloc(TYPE, N, AP)\
libsimple_ememalloc(N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
LIBSIMPLE_MEMALLOC_VA_LIST, AP, LIBSIMPLE_MEMALLOC_END)
+/* @since 1.1 */
#define libsimple_envarrayalloc(STATUS, TYPE, N, AP)\
libsimple_enmemalloc(STATUS, N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
LIBSIMPLE_MEMALLOC_VA_LIST, AP, LIBSIMPLE_MEMALLOC_END)
+/* @since 1.1 */
#define libsimple_arrayalloc(TYPE, N, ... /*, LIBSIMPLE_ARRAYALLOC_END */)\
libsimple_memalloc(N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
__VA_ARGS__)
+/* @since 1.1 */
#define libsimple_earrayalloc(TYPE, N, ... /*, LIBSIMPLE_ARRAYALLOC_END */)\
libsimple_ememalloc(N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
__VA_ARGS__)
+/* @since 1.1 */
#define libsimple_enarrayalloc(STATUS, TYPE, N, ... /*, LIBSIMPLE_ARRAYALLOC_END */)\
libsimple_enmemalloc(STATUS, N, LIBSIMPLE_MEMALLOC_ELEMENT_SIZE, sizeof(TYPE),\
LIBSIMPLE_MEMALLOC_ALIGNMENT, _Alignof(TYPE),\
__VA_ARGS__)
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
void *libsimple_vmemalloc(size_t, va_list);
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
void *libsimple_envmemalloc(int, size_t, va_list);
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
static inline void *libsimple_evmemalloc(size_t __n, va_list __ap)
{ return libsimple_envmemalloc(libsimple_default_failure_exit, __n, __ap); }
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
static inline void *
libsimple_memalloc(size_t __n, ... /*, LIBSIMPLE_MEMALLOC_END */)
@@ -98,6 +116,7 @@ libsimple_memalloc(size_t __n, ... /*, LIBSIMPLE_MEMALLOC_END */)
va_end(__ap);
}
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
static inline void *
libsimple_enmemalloc(int __status, size_t __n, ... /*, LIBSIMPLE_MEMALLOC_END */)
@@ -108,6 +127,7 @@ libsimple_enmemalloc(int __status, size_t __n, ... /*, LIBSIMPLE_MEMALLOC_END */
va_end(__ap);
}
+/* @since 1.1 */
_LIBSIMPLE_GCC_ONLY(__attribute__((__malloc__, __warn_unused_result__)))
static inline void *
libsimple_ememalloc(size_t __n, ... /*, LIBSIMPLE_MEMALLOC_END */)