aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libsimple/definitions.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/libsimple/definitions.h b/libsimple/definitions.h
index e5dca61..1e39867 100644
--- a/libsimple/definitions.h
+++ b/libsimple/definitions.h
@@ -351,7 +351,7 @@
* @since 1.0
*/
#ifndef INTSTRLEN
-# define INTSTRLEN(TYPE) ((sizeof(TYPE) == 1 ? 3 : 5 * (sizeof(TYPE) / 2)) + ((TYPE)-1 < 0))
+# define INTSTRLEN(TYPE) ((CHAR_BIT * sizeof(TYPE) <= 8 ? 3 : 5 * (CHAR_BIT * sizeof(TYPE) / 16)) + ((TYPE)-1 < 0))
#endif
@@ -364,7 +364,7 @@
* @since 1.0
*/
#ifndef TYPE_MAX
-# define TYPE_MAX(TYPE) ((TYPE)(((1ULL << (8 * sizeof(TYPE) - 1)) - 1) << ((TYPE)-1 > 0) | 1))
+# define TYPE_MAX(TYPE) ((TYPE)(((1ULL << (CHAR_BIT * sizeof(TYPE) - 1)) - 1) << ((TYPE)-1 > 0) | 1))
#endif
@@ -377,7 +377,7 @@
* @since 1.0
*/
#ifndef TYPE_MIN
-# define TYPE_MIN(TYPE) ((TYPE)((TYPE)-1 > 0 ? 0 : (TYPE)~0 < (TYPE)-1 ? (TYPE)~0 : (TYPE)(1ULL << (8 * sizeof(TYPE) - 1))))
+# define TYPE_MIN(TYPE) ((TYPE)((TYPE)-1 > 0 ? 0 : (TYPE)~0 < (TYPE)-1 ? (TYPE)~0 : (TYPE)(1ULL << (CHAR_BIT * sizeof(TYPE) - 1))))
#endif