aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/errno.h2
-rw-r--r--include/error.h14
-rw-r--r--include/inttypes.h312
-rw-r--r--include/libgen.h6
4 files changed, 334 insertions, 0 deletions
diff --git a/include/errno.h b/include/errno.h
index 390c463..293c0d0 100644
--- a/include/errno.h
+++ b/include/errno.h
@@ -39,6 +39,8 @@
/**
* A modifiable lvalue used to describe an error
* that has occurred in the thread.
+ *
+ * @etymology (Err)or (number).
*/
#define errno (*__errno())
diff --git a/include/error.h b/include/error.h
index d6acb6e..5d0e24f 100644
--- a/include/error.h
+++ b/include/error.h
@@ -36,6 +36,8 @@
*
* This is a GNU extension.
*
+ * @etymology Report (error)!
+ *
* @param status The process will exit, with the function returning, with this
* exit status, unless it is zero. If zero, the process shall not exit.
* @param errnum The value of `errno` when the error occurred, zero if the a textual
@@ -52,6 +54,8 @@ void error(int, int, const char*, ...)
*
* This is a slibc extension to the GNU extension `error`.
*
+ * @etymology (V)ariadic version of (`error`).
+ *
* @param status The process will exit, with the function returning, with this
* exit status, unless it is zero. If zero, the process shall not exit.
* @param errnum The value of `errno` when the error occurred, zero if the a textual
@@ -71,6 +75,8 @@ void verror(int, int, const char*, va_list);
*
* This is a GNU extension.
*
+ * @etymology Report (error at line) in source code!
+ *
* @param status The process will exit, with the function returning, with this
* exit status, unless it is zero. If zero, the process shall not exit.
* @param errnum The value of `errno` when the error occurred, zero if the a textual
@@ -90,6 +96,8 @@ void error_at_line(int, int, const char*, unsigned int, const char*, ...)
*
* This is a slibc extension to the GNU extension `error_at_line`.
*
+ * @etymology (V)ariadic version of (`error_at_line`).
+ *
* @param status The process will exit, with the function returning, with this
* exit status, unless it is zero. If zero, the process shall not exit.
* @param errnum The value of `errno` when the error occurred, zero if the a textual
@@ -111,6 +119,8 @@ void verror_at_line(int, int, const char*, unsigned int, const char*, va_list);
* This variable is global and shared by all threads.
*
* This is a GNU extension.
+ *
+ * @etymology (`error`)-subsystem: (message count).
*/
extern volatile unsigned int error_message_count;
@@ -129,6 +139,8 @@ extern volatile unsigned int error_message_count;
* occurred on the same line as the last time.
*
* This is a GNU extension.
+ *
+ * @etymology (`error`)-subsystem: print (one) time (per line).
*/
extern volatile int error_one_per_line;
@@ -140,6 +152,8 @@ extern volatile int error_one_per_line;
* shared by all threads.
*
* This is a GNU extension.
+ *
+ * @etymology (`error`)-subsystem function: (print) the (prog)ram's (name).
*/
extern void (*volatile error_print_progname)(void);
#endif
diff --git a/include/inttypes.h b/include/inttypes.h
index d99b334..5602e97 100644
--- a/include/inttypes.h
+++ b/include/inttypes.h
@@ -37,6 +37,8 @@
* Perform an integer division and return
* both the quotient and the remainder.
*
+ * @etymology `(i)nt(max)_t`-function: (div)ide.
+ *
* @param numerator The numerator.
* @param denominator The denominator, must not be 0 lest
* the process will be killed by SIGFPE.
@@ -54,6 +56,8 @@ imaxdiv_t imaxdiv(intmax_t, intmax_t)
* overflow, and `INTMAX_MIN` will (probably)
* be returned.
*
+ * @etymology `(i)nt(max)_t`-function: (abs)olute value.
+ *
* @param value The integer.
* @return The absolute value of the integer.
*/
@@ -173,24 +177,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(8)_t`.
*/
#define PRId8 __PRI8 "d"
/**
* %-code, excluding the %, for printing
* an int16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(16)_t`.
*/
#define PRId16 __PRI16 "d"
/**
* %-code, excluding the %, for printing
* an int32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(32)_t`.
*/
#define PRId32 __PRI32 "d"
/**
* %-code, excluding the %, for printing
* an int64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(64)_t`.
*/
#define PRId64 __PRI64 "d"
@@ -198,24 +210,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int_least8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(least8)_t`.
*/
#define PRIdLEAST8 PRId8
/**
* %-code, excluding the %, for printing
* an int_least16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(least16)_t`.
*/
#define PRIdLEAST16 PRId16
/**
* %-code, excluding the %, for printing
* an int_least32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(least32)_t`.
*/
#define PRIdLEAST32 PRId32
/**
* %-code, excluding the %, for printing
* an int_least64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(least64)_t`.
*/
#define PRIdLEAST64 PRId64
@@ -223,24 +243,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int_fast8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(fast8)_t`.
*/
#define PRIdFAST8 __PRIFAST8 "d"
/**
* %-code, excluding the %, for printing
* an int_fast16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(fast16)_t`.
*/
#define PRIdFAST16 __PRIFAST16 "d"
/**
* %-code, excluding the %, for printing
* an int_fast32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(fast32)_t`.
*/
#define PRIdFAST32 __PRIFAST32 "d"
/**
* %-code, excluding the %, for printing
* an int_fast64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int_(fast64)_t`.
*/
#define PRIdFAST64 __PRIFAST64 "d"
@@ -249,24 +277,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(8)_t`.
*/
#define PRIi8 __PRI8 "i"
/**
* %-code, excluding the %, for printing
* an int16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(16)_t`.
*/
#define PRIi16 __PRI16 "i"
/**
* %-code, excluding the %, for printing
* an int32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(32)_t`.
*/
#define PRIi32 __PRI32 "i"
/**
* %-code, excluding the %, for printing
* an int64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(64)_t`.
*/
#define PRIi64 __PRI64 "i"
@@ -274,24 +310,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int_least8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(least8)_t`.
*/
#define PRIiLEAST8 PRIi8
/**
* %-code, excluding the %, for printing
* an int_least16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(least16)_t`.
*/
#define PRIiLEAST16 PRIi16
/**
* %-code, excluding the %, for printing
* an int_least32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(least32)_t`.
*/
#define PRIiLEAST32 PRIi32
/**
* %-code, excluding the %, for printing
* an int_least64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(least64)_t`.
*/
#define PRIiLEAST64 PRIi64
@@ -299,24 +343,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an int_fast8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(fast8)_t`.
*/
#define PRIiFAST8 __PRIFAST8 "i"
/**
* %-code, excluding the %, for printing
* an int_fast16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(fast16)_t`.
*/
#define PRIiFAST16 __PRIFAST16 "i"
/**
* %-code, excluding the %, for printing
* an int_fast32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(fast32)_t`.
*/
#define PRIiFAST32 __PRIFAST32 "i"
/**
* %-code, excluding the %, for printing
* an int_fast64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int_(fast64)_t`.
*/
#define PRIiFAST64 __PRIFAST64 "i"
@@ -325,24 +377,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint8_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `int(8)_t`.
*/
#define PRIo8 __PRI8 "o"
/**
* %-code, excluding the %, for printing
* an uint16_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `int(16)_t`.
*/
#define PRIo16 __PRI16 "o"
/**
* %-code, excluding the %, for printing
* an uint32_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `int(32)_t`.
*/
#define PRIo32 __PRI32 "o"
/**
* %-code, excluding the %, for printing
* an uint64_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `int(64)_t`.
*/
#define PRIo64 __PRI64 "o"
@@ -350,24 +410,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint_least8_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(least8)_t`.
*/
#define PRIoLEAST8 PRIo8
/**
* %-code, excluding the %, for printing
* an uint_least16_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(least16)_t`.
*/
#define PRIoLEAST16 PRIo16
/**
* %-code, excluding the %, for printing
* an uint_least32_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(least32)_t`.
*/
#define PRIoLEAST32 PRIo32
/**
* %-code, excluding the %, for printing
* an uint_least64_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(least64)_t`.
*/
#define PRIoLEAST64 PRIo64
@@ -375,24 +443,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint_fast8_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(fast8)_t`.
*/
#define PRIoFAST8 __PRIFAST8 "o"
/**
* %-code, excluding the %, for printing
* an uint_fast16_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(fast16)_t`.
*/
#define PRIoFAST16 __PRIFAST16 "o"
/**
* %-code, excluding the %, for printing
* an uint_fast32_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(fast32)_t`.
*/
#define PRIoFAST32 __PRIFAST32 "o"
/**
* %-code, excluding the %, for printing
* an uint_fast64_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint_(fast64)_t`.
*/
#define PRIoFAST64 __PRIFAST64 "o"
@@ -401,24 +477,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(8)_t`.
*/
#define PRIu8 __PRI8 "u"
/**
* %-code, excluding the %, for printing
* an uint16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(16)_t`.
*/
#define PRIu16 __PRI16 "u"
/**
* %-code, excluding the %, for printing
* an uint32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(32)_t`.
*/
#define PRIu32 __PRI32 "u"
/**
* %-code, excluding the %, for printing
* an uint64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(64)_t`.
*/
#define PRIu64 __PRI64 "u"
@@ -426,24 +510,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint_least8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(least8)_t`.
*/
#define PRIuLEAST8 PRIu8
/**
* %-code, excluding the %, for printing
* an uint_least16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(least16)_t`.
*/
#define PRIuLEAST16 PRIu16
/**
* %-code, excluding the %, for printing
* an uint_least32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(least32)_t`.
*/
#define PRIuLEAST32 PRIu32
/**
* %-code, excluding the %, for printing
* an uint_least64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(least64)_t`.
*/
#define PRIuLEAST64 PRIu64
@@ -451,24 +543,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing
* an uint_fast8_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(fast8)_t`.
*/
#define PRIuFAST8 __PRIFAST8 "u"
/**
* %-code, excluding the %, for printing
* an uint_fast16_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(fast16)_t`.
*/
#define PRIuFAST16 __PRIFAST16 "u"
/**
* %-code, excluding the %, for printing
* an uint_fast32_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(fast32)_t`.
*/
#define PRIuFAST32 __PRIFAST32 "u"
/**
* %-code, excluding the %, for printing
* an uint_fast64_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint_(fast64)_t`.
*/
#define PRIuFAST64 __PRIFAST64 "u"
@@ -477,24 +577,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint8_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(8)_t`.
*/
#define PRIx8 __PRI8 "x"
/**
* %-code, excluding the %, for printing an
* uint16_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(16)_t`.
*/
#define PRIx16 __PRI16 "x"
/**
* %-code, excluding the %, for printing an
* uint32_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(32)_t`.
*/
#define PRIx32 __PRI32 "x"
/**
* %-code, excluding the %, for printing an
* uint64_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(64)_t`.
*/
#define PRIx64 __PRI64 "x"
@@ -502,24 +610,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint_least8_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(least8)_t`.
*/
#define PRIxLEAST8 PRIx8
/**
* %-code, excluding the %, for printing an
* uint_least16_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(least16)_t`.
*/
#define PRIxLEAST16 PRIx16
/**
* %-code, excluding the %, for printing an
* uint_least32_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(least32)_t`.
*/
#define PRIxLEAST32 PRIx32
/**
* %-code, excluding the %, for printing an
* uint_least64_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(least64)_t`.
*/
#define PRIxLEAST64 PRIx64
@@ -527,24 +643,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint_fast8_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(fast8)_t`.
*/
#define PRIxFAST8 __PRIFAST8 "x"
/**
* %-code, excluding the %, for printing an
* uint_fast16_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(fast16)_t`.
*/
#define PRIxFAST16 __PRIFAST16 "x"
/**
* %-code, excluding the %, for printing an
* uint_fast32_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(fast32)_t`.
*/
#define PRIxFAST32 __PRIFAST32 "x"
/**
* %-code, excluding the %, for printing an
* uint_fast64_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint_(fast64)_t`.
*/
#define PRIxFAST64 __PRIFAST64 "x"
@@ -553,24 +677,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint8_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(8)_t`.
*/
#define PRIX8 __PRI8 "X"
/**
* %-code, excluding the %, for printing an
* uint16_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(16)_t`.
*/
#define PRIX16 __PRI16 "X"
/**
* %-code, excluding the %, for printing an
* uint32_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(32)_t`.
*/
#define PRIX32 __PRI32 "X"
/**
* %-code, excluding the %, for printing an
* uint64_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(64)_t`.
*/
#define PRIX64 __PRI64 "X"
@@ -578,24 +710,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint_least8_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(least8)_t`.
*/
#define PRIXLEAST8 PRIX8
/**
* %-code, excluding the %, for printing an
* uint_least16_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(least16)_t`.
*/
#define PRIXLEAST16 PRIX16
/**
* %-code, excluding the %, for printing an
* uint_least32_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(least32)_t`.
*/
#define PRIXLEAST32 PRIX32
/**
* %-code, excluding the %, for printing an
* uint_least64_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(least64)_t`.
*/
#define PRIXLEAST64 PRIX64
@@ -603,24 +743,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* uint_fast8_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(fast8)_t`.
*/
#define PRIXFAST8 __PRIFAST8 "X"
/**
* %-code, excluding the %, for printing an
* uint_fast16_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(fast16)_t`.
*/
#define PRIXFAST16 __PRIFAST16 "X"
/**
* %-code, excluding the %, for printing an
* uint_fast32_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(fast32)_t`.
*/
#define PRIXFAST32 __PRIFAST32 "X"
/**
* %-code, excluding the %, for printing an
* uint_fast64_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint_(fast64)_t`.
*/
#define PRIXFAST64 __PRIFAST64 "X"
@@ -629,36 +777,48 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for printing an
* intmax_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(max)_t`.
*/
#define PRIdMAX __PRIMAX "d"
/**
* %-code, excluding the %, for printing an
* intmax_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(max)_t`.
*/
#define PRIiMAX __PRIMAX "i"
/**
* %-code, excluding the %, for printing an
* uintmax_t in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint(max)_t`.
*/
#define PRIoMAX __PRIMAX "o"
/**
* %-code, excluding the %, for printing an
* uintmax_t in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(max)_t`.
*/
#define PRIuMAX __PRIMAX "u"
/**
* %-code, excluding the %, for printing an
* uintmax_t in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(max)_t`.
*/
#define PRIxMAX __PRIMAX "x"
/**
* %-code, excluding the %, for printing an
* uintmax_t in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(max)_t`.
*/
#define PRIXMAX __PRIMAX "X"
@@ -668,6 +828,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an intptr_t, ptrdiff_t, or ssize_t
* in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(d)` for `int(ptr)_t` and alike.
*/
#define PRIdPTR __PRIPTR "d"
@@ -675,6 +837,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an intptr_t, ptrdiff_t, or ssize_t
* in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(i)` for `int(ptr)_t` and alike.
*/
#define PRIiPTR __PRIPTR "i"
@@ -682,6 +846,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an uintptr_t, uptrdiff_t, or size_t
* in octal form.
+ *
+ * @etymology `(pri)ntf` `%(o)` for `uint(ptr)_t` and alike.
*/
#define PRIoPTR __PRIPTR "o"
@@ -689,6 +855,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an uintptr_t, uptrdiff_t, or size_t
* in decimal form.
+ *
+ * @etymology `(pri)ntf` `%(u)` for `uint(ptr)_t` and alike.
*/
#define PRIuPTR __PRIPTR "u"
@@ -696,6 +864,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an uintptr_t, uptrdiff_t, or size_t
* in lowercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(x)` for `uint(ptr)_t` and alike.
*/
#define PRIxPTR __PRIPTR "x"
@@ -703,6 +873,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for printing
* an uintptr_t, uptrdiff_t, or size_t
* in uppercase hexadecimal form.
+ *
+ * @etymology `(pri)ntf` `%(X)` for `uint(ptr)_t` and alike.
*/
#define PRIXPTR __PRIPTR "X"
@@ -714,24 +886,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(8)_t`.
*/
#define SCNd8 __SCN8 "d"
/**
* %-code, excluding the %, for scanning
* an int16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(16)_t`.
*/
#define SCNd16 __SCN16 "d"
/**
* %-code, excluding the %, for scanning
* an int32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(32)_t`.
*/
#define SCNd32 __SCN32 "d"
/**
* %-code, excluding the %, for scanning
* an int64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(64)_t`.
*/
#define SCNd64 __SCN64 "d"
@@ -739,24 +919,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int_least8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(least8)_t`.
*/
#define SCNdLEAST8 SCNd8
/**
* %-code, excluding the %, for scanning
* an int_least16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(least16)_t`.
*/
#define SCNdLEAST16 SCNd16
/**
* %-code, excluding the %, for scanning
* an int_least32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(least32)_t`.
*/
#define SCNdLEAST32 SCNd32
/**
* %-code, excluding the %, for scanning
* an int_least64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(least64)_t`.
*/
#define SCNdLEAST64 SCNd64
@@ -764,24 +952,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int_fast8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(fast8)_t`.
*/
#define SCNdFAST8 __SCNFAST8 "d"
/**
* %-code, excluding the %, for scanning
* an int_fast16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(fast16)_t`.
*/
#define SCNdFAST16 __SCNFAST16 "d"
/**
* %-code, excluding the %, for scanning
* an int_fast32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(fast32)_t`.
*/
#define SCNdFAST32 __SCNFAST32 "d"
/**
* %-code, excluding the %, for scanning
* an int_fast64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int_(fast64)_t`.
*/
#define SCNdFAST64 __SCNFAST64 "d"
@@ -790,24 +986,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(8)_t`.
*/
#define SCNi8 __SCN8 "i"
/**
* %-code, excluding the %, for scanning
* an int16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(16)_t`.
*/
#define SCNi16 __SCN16 "i"
/**
* %-code, excluding the %, for scanning
* an int32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(32)_t`.
*/
#define SCNi32 __SCN32 "i"
/**
* %-code, excluding the %, for scanning
* an int64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(64)_t`.
*/
#define SCNi64 __SCN64 "i"
@@ -815,24 +1019,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int_least8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(least8)_t`.
*/
#define SCNiLEAST8 SCNi8
/**
* %-code, excluding the %, for scanning
* an int_least16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(least16)_t`.
*/
#define SCNiLEAST16 SCNi16
/**
* %-code, excluding the %, for scanning
* an int_least32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(least32)_t`.
*/
#define SCNiLEAST32 SCNi32
/**
* %-code, excluding the %, for scanning
* an int_least64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(least64)_t`.
*/
#define SCNiLEAST64 SCNi64
@@ -840,24 +1052,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an int_fast8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(fast8)_t`.
*/
#define SCNiFAST8 __SCNFAST8 "i"
/**
* %-code, excluding the %, for scanning
* an int_fast16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(fast16)_t`.
*/
#define SCNiFAST16 __SCNFAST16 "i"
/**
* %-code, excluding the %, for scanning
* an int_fast32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(fast32)_t`.
*/
#define SCNiFAST32 __SCNFAST32 "i"
/**
* %-code, excluding the %, for scanning
* an int_fast64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int_(fast64)_t`.
*/
#define SCNiFAST64 __SCNFAST64 "i"
@@ -866,24 +1086,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint8_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(8)_t`.
*/
#define SCNo8 __SCN8 "o"
/**
* %-code, excluding the %, for scanning
* an uint16_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(16)_t`.
*/
#define SCNo16 __SCN16 "o"
/**
* %-code, excluding the %, for scanning
* an uint32_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(32)_t`.
*/
#define SCNo32 __SCN32 "o"
/**
* %-code, excluding the %, for scanning
* an uint64_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(64)_t`.
*/
#define SCNo64 __SCN64 "o"
@@ -891,24 +1119,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint_least8_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(least8)_t`.
*/
#define SCNoLEAST8 SCNo8
/**
* %-code, excluding the %, for scanning
* an uint_least16_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(least16)_t`.
*/
#define SCNoLEAST16 SCNo16
/**
* %-code, excluding the %, for scanning
* an uint_least32_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(least32)_t`.
*/
#define SCNoLEAST32 SCNo32
/**
* %-code, excluding the %, for scanning
* an uint_least64_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(least64)_t`.
*/
#define SCNoLEAST64 SCNo64
@@ -916,24 +1152,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint_fast8_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(fast8)_t`.
*/
#define SCNoFAST8 __SCNFAST8 "o"
/**
* %-code, excluding the %, for scanning
* an uint_fast16_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(fast16)_t`.
*/
#define SCNoFAST16 __SCNFAST16 "o"
/**
* %-code, excluding the %, for scanning
* an uint_fast32_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(fast32)_t`.
*/
#define SCNoFAST32 __SCNFAST32 "o"
/**
* %-code, excluding the %, for scanning
* an uint_fast64_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint_(fast64)_t`.
*/
#define SCNoFAST64 __SCNFAST64 "o"
@@ -942,24 +1186,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(8)_t`.
*/
#define SCNu8 __SCN8 "u"
/**
* %-code, excluding the %, for scanning
* an uint16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(16)_t`.
*/
#define SCNu16 __SCN16 "u"
/**
* %-code, excluding the %, for scanning
* an uint32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(32)_t`.
*/
#define SCNu32 __SCN32 "u"
/**
* %-code, excluding the %, for scanning
* an uint64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(64)_t`.
*/
#define SCNu64 __SCN64 "u"
@@ -967,24 +1219,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint_least8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(least8)_t`.
*/
#define SCNuLEAST8 SCNu8
/**
* %-code, excluding the %, for scanning
* an uint_least16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(least16)_t`.
*/
#define SCNuLEAST16 SCNu16
/**
* %-code, excluding the %, for scanning
* an uint_least32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(least32)_t`.
*/
#define SCNuLEAST32 SCNu32
/**
* %-code, excluding the %, for scanning
* an uint_least64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(least64)_t`.
*/
#define SCNuLEAST64 SCNu64
@@ -992,24 +1252,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning
* an uint_fast8_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(fast8)_t`.
*/
#define SCNuFAST8 __SCNFAST8 "u"
/**
* %-code, excluding the %, for scanning
* an uint_fast16_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(fast16)_t`.
*/
#define SCNuFAST16 __SCNFAST16 "u"
/**
* %-code, excluding the %, for scanning
* an uint_fast32_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(fast32)_t`.
*/
#define SCNuFAST32 __SCNFAST32 "u"
/**
* %-code, excluding the %, for scanning
* an uint_fast64_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint_(fast64)_t`.
*/
#define SCNuFAST64 __SCNFAST64 "u"
@@ -1018,24 +1286,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning an
* uint8_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(8)_t`.
*/
#define SCNx8 __SCN8 "x"
/**
* %-code, excluding the %, for scanning an
* uint16_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(16)_t`.
*/
#define SCNx16 __SCN16 "x"
/**
* %-code, excluding the %, for scanning an
* uint32_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(32)_t`.
*/
#define SCNx32 __SCN32 "x"
/**
* %-code, excluding the %, for scanning an
* uint64_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(64)_t`.
*/
#define SCNx64 __SCN64 "x"
@@ -1043,24 +1319,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning an
* uint_least8_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(least8)_t`.
*/
#define SCNxLEAST8 SCNx8
/**
* %-code, excluding the %, for scanning an
* uint_least16_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(least16)_t`.
*/
#define SCNxLEAST16 SCNx16
/**
* %-code, excluding the %, for scanning an
* uint_least32_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(least32)_t`.
*/
#define SCNxLEAST32 SCNx32
/**
* %-code, excluding the %, for scanning an
* uint_least64_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(least64)_t`.
*/
#define SCNxLEAST64 SCNx64
@@ -1068,24 +1352,32 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning an
* uint_fast8_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(fast8)_t`.
*/
#define SCNxFAST8 __SCNFAST8 "x"
/**
* %-code, excluding the %, for scanning an
* uint_fast16_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(fast16)_t`.
*/
#define SCNxFAST16 __SCNFAST16 "x"
/**
* %-code, excluding the %, for scanning an
* uint_fast32_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(fast32)_t`.
*/
#define SCNxFAST32 __SCNFAST32 "x"
/**
* %-code, excluding the %, for scanning an
* uint_fast64_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint_(fast64)_t`.
*/
#define SCNxFAST64 __SCNFAST64 "x"
@@ -1094,30 +1386,40 @@ intmax_t (imaxabs)(intmax_t)
/**
* %-code, excluding the %, for scanning an
* intmax_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(max)_t`.
*/
#define SCNdMAX __SCNMAX "d"
/**
* %-code, excluding the %, for scanning an
* intmax_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(max)_t`.
*/
#define SCNiMAX __SCNMAX "i"
/**
* %-code, excluding the %, for scanning an
* uintmax_t from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(max)_t`.
*/
#define SCNoMAX __SCNMAX "o"
/**
* %-code, excluding the %, for scanning an
* uintmax_t from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(max)_t`.
*/
#define SCNuMAX __SCNMAX "u"
/**
* %-code, excluding the %, for scanning an
* uintmax_t from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(max)_t`.
*/
#define SCNxMAX __SCNMAX "x"
@@ -1127,6 +1429,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for scanning
* an intptr_t, ptrdiff_t, or ssize_t
* from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(d)` for `int(ptr)_t` and alike.
*/
#define SCNdPTR __SCNPTR "d"
@@ -1134,6 +1438,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for scanning
* an intptr_t, ptrdiff_t, or ssize_t
* from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(i)` for `int(ptr)_t` and alike.
*/
#define SCNiPTR __SCNPTR "i"
@@ -1141,6 +1447,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for scanning
* an uintptr_t, uptrdiff_t, or size_t
* from octal form.
+ *
+ * @etymology `(sc)a(n)f` `%(o)` for `uint(ptr)_t` and alike.
*/
#define SCNoPTR __SCNPTR "o"
@@ -1148,6 +1456,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for scanning
* an uintptr_t, uptrdiff_t, or size_t
* from decimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(u)` for `uint(ptr)_t` and alike.
*/
#define SCNuPTR __SCNPTR "u"
@@ -1155,6 +1465,8 @@ intmax_t (imaxabs)(intmax_t)
* %-code, excluding the %, for scanning
* an uintptr_t, uptrdiff_t, or size_t
* from hexadecimal form.
+ *
+ * @etymology `(sc)a(n)f` `%(x)` for `uint(ptr)_t` and alike.
*/
#define SCNxPTR __SCNPTR "x"
diff --git a/include/libgen.h b/include/libgen.h
index 182f192..8f6b884 100644
--- a/include/libgen.h
+++ b/include/libgen.h
@@ -32,6 +32,8 @@
* Get the basename of a filename, remove
* trailing slashes.
*
+ * @etymology File's (basename).
+ *
* @param filename The filename, may be edited by this function.
* @return The basename, it is either a substring
* of `filename` or, if `filename` is `NULL`
@@ -45,6 +47,8 @@ char* __xpg_basename(char*)
/**
* Get the dirname of a filename.
*
+ * @etymology Parent (dir)ectory's path(name).
+ *
* @param filename The filename, may be edited by this function.
* @return The dirname, it is either a substring
* of `filename` or, if `filename` is `NULL`
@@ -71,6 +75,8 @@ char* dirname(char*)
*
* This is a slibc extension.
*
+ * @etymology (Clean) path(name).
+ *
* @param filename The filename, may be edited by this function.
* @return The dirname, it is either `filename` or,
* if `filename` is `NULL` or does no contain a