aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arm/include/_limits.h3
-rw-r--r--sys/arm64/include/_limits.h3
-rw-r--r--sys/powerpc/include/_limits.h3
-rw-r--r--sys/riscv/include/_limits.h3
-rw-r--r--sys/sys/limits.h20
-rw-r--r--sys/x86/include/_limits.h3
6 files changed, 35 insertions, 0 deletions
diff --git a/sys/arm/include/_limits.h b/sys/arm/include/_limits.h
index 8cd48337508e..d6bcb09bda84 100644
--- a/sys/arm/include/_limits.h
+++ b/sys/arm/include/_limits.h
@@ -42,6 +42,9 @@
*/
#define __CHAR_BIT 8 /* number of bits in a char */
+#define __SHRT_BIT 16 /* number of bits in a short */
+#define __INT_BIT 32 /* number of bits in an int */
+#define __LLONG_BIT 64 /* number of bits in a long long */
#define __SCHAR_MAX 0x7f /* max value for a signed char */
#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */
diff --git a/sys/arm64/include/_limits.h b/sys/arm64/include/_limits.h
index 08649b5c779d..aeb72dc19b09 100644
--- a/sys/arm64/include/_limits.h
+++ b/sys/arm64/include/_limits.h
@@ -41,6 +41,9 @@
*/
#define __CHAR_BIT 8 /* number of bits in a char */
+#define __SHRT_BIT 16 /* number of bits in a short */
+#define __INT_BIT 32 /* number of bits in an int */
+#define __LLONG_BIT 64 /* number of bits in a long long */
#define __SCHAR_MAX 0x7f /* max value for a signed char */
#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */
diff --git a/sys/powerpc/include/_limits.h b/sys/powerpc/include/_limits.h
index 542248e51498..cae389ef0f36 100644
--- a/sys/powerpc/include/_limits.h
+++ b/sys/powerpc/include/_limits.h
@@ -42,6 +42,9 @@
*/
#define __CHAR_BIT 8 /* number of bits in a char */
+#define __SHRT_BIT 16 /* number of bits in an short */
+#define __INT_BIT 32 /* number of bits in an int */
+#define __LLONG_BIT 64 /* number of bits in a long long */
#define __SCHAR_MAX 0x7f /* max value for a signed char */
#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */
diff --git a/sys/riscv/include/_limits.h b/sys/riscv/include/_limits.h
index 95e86c14e168..872e5b610e0c 100644
--- a/sys/riscv/include/_limits.h
+++ b/sys/riscv/include/_limits.h
@@ -37,6 +37,9 @@
*/
#define __CHAR_BIT 8 /* number of bits in a char */
+#define __SHRT_BIT 16 /* number of bits in a short */
+#define __INT_BIT 32 /* number of bits in an int */
+#define __LLONG_BIT 64 /* number of bits in a long long */
#define __SCHAR_MAX 0x7f /* max value for a signed char */
#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */
diff --git a/sys/sys/limits.h b/sys/sys/limits.h
index 2cb0051fe86c..8044d4458639 100644
--- a/sys/sys/limits.h
+++ b/sys/sys/limits.h
@@ -68,6 +68,26 @@
#define LLONG_MIN __LLONG_MIN /* min for a long long */
#endif
+#if __ISO_C_VISIBLE >= 2023
+#define BOOL_WIDTH 1 /* number of bits in a bool */
+
+#define CHAR_WIDTH __CHAR_BIT /* number of bits in a char */
+#define SCHAR_WIDTH __CHAR_BIT /* number of bits in a signed char */
+#define UCHAR_WIDTH __CHAR_BIT /* number of bits in an unsigned char */
+
+#define SHRT_WIDTH __SHRT_BIT /* number of bits in a short */
+#define USHRT_WIDTH __SHRT_BIT /* number of bits in an unsigned short */
+
+#define INT_WIDTH __INT_BIT /* number of bits in an int */
+#define UINT_WIDTH __INT_BIT /* number of bits in an unsigned int */
+
+#define LONG_WIDTH __LONG_BIT /* number of bits in a long */
+#define ULONG_WIDTH __LONG_BIT /* number of bits in an unsigned long */
+
+#define LLONG_WIDTH __LLONG_BIT /* number of bits in a long long */
+#define ULLONG_WIDTH __LLONG_BIT /* number of bits in an unsigned long long */
+#endif
+
#if __POSIX_VISIBLE || __XSI_VISIBLE
#define SSIZE_MAX __SSIZE_MAX /* max value for an ssize_t */
#endif
diff --git a/sys/x86/include/_limits.h b/sys/x86/include/_limits.h
index 422667a79bc0..fc7cfac1e70d 100644
--- a/sys/x86/include/_limits.h
+++ b/sys/x86/include/_limits.h
@@ -42,6 +42,9 @@
*/
#define __CHAR_BIT 8 /* number of bits in a char */
+#define __SHRT_BIT 16 /* number of bits in a short */
+#define __INT_BIT 32 /* number of bits in an int */
+#define __LLONG_BIT 64 /* number of bits in a long long */
#define __SCHAR_MAX 0x7f /* max value for a signed char */
#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */