]> git.lizzy.rs Git - plan9front.git/commitdiff
Include integer limits from generic stdint.h in system-specific stdint.h
authorOri Bernstein <ori@eigenstate.org>
Sat, 7 Sep 2019 01:01:52 +0000 (18:01 -0700)
committerOri Bernstein <ori@eigenstate.org>
Sat, 7 Sep 2019 01:01:52 +0000 (18:01 -0700)
amd64/include/ape/stdint.h
arm64/include/ape/stdint.h
sys/include/ape/limits.h
sys/include/ape/stdint.h

index b9f62ad1888593b817be72575a25b2372fbbe9be..ed0b2ef2c2afd883de8549a5c6e0916ddac5dc83 100644 (file)
@@ -1,31 +1,9 @@
-#ifndef _STDINT_H_
-#define _STDINT_H_ 1
+#ifndef _STDINT_ARCH_H_
+#define _STDINT_ARCH_H_ 1
 
-typedef char int8_t;
-typedef short int16_t;
-typedef int int32_t;
-typedef long long int64_t;
-typedef unsigned char uint8_t;
-typedef unsigned short uint16_t;
-typedef unsigned int uint32_t;
-typedef unsigned long long uint64_t;
+typedef long long _intptr_t;
+typedef unsigned long long _uintptr_t;
 
-typedef long long intptr_t;
-typedef unsigned long long uintptr_t;
-
-#define INT8_MIN       0x80
-#define INT16_MIN      0x8000
-#define INT32_MIN      0x80000000
-#define INT64_MIN      0x8000000000000000LL
-
-#define INT8_MAX       0x7f
-#define INT16_MAX      0x7fff
-#define INT32_MAX      0x7fffffff
-#define INT64_MAX      0x7fffffffffffffffULL
-
-#define UINT8_MAX      0xff
-#define UINT16_MAX     0xffff
-#define UINT32_MAX     0xffffffffL
-#define UINT64_MAX     0xffffffffffffffffULL
+#include "/sys/include/ape/stdint.h"
 
 #endif
index b9f62ad1888593b817be72575a25b2372fbbe9be..ed0b2ef2c2afd883de8549a5c6e0916ddac5dc83 100644 (file)
@@ -1,31 +1,9 @@
-#ifndef _STDINT_H_
-#define _STDINT_H_ 1
+#ifndef _STDINT_ARCH_H_
+#define _STDINT_ARCH_H_ 1
 
-typedef char int8_t;
-typedef short int16_t;
-typedef int int32_t;
-typedef long long int64_t;
-typedef unsigned char uint8_t;
-typedef unsigned short uint16_t;
-typedef unsigned int uint32_t;
-typedef unsigned long long uint64_t;
+typedef long long _intptr_t;
+typedef unsigned long long _uintptr_t;
 
-typedef long long intptr_t;
-typedef unsigned long long uintptr_t;
-
-#define INT8_MIN       0x80
-#define INT16_MIN      0x8000
-#define INT32_MIN      0x80000000
-#define INT64_MIN      0x8000000000000000LL
-
-#define INT8_MAX       0x7f
-#define INT16_MAX      0x7fff
-#define INT32_MAX      0x7fffffff
-#define INT64_MAX      0x7fffffffffffffffULL
-
-#define UINT8_MAX      0xff
-#define UINT16_MAX     0xffff
-#define UINT32_MAX     0xffffffffL
-#define UINT64_MAX     0xffffffffffffffffULL
+#include "/sys/include/ape/stdint.h"
 
 #endif
index 0b05c0df3d0fea46fb9ee69e178f16c29eacd16b..00ff45d17622f9a52665bc13cf5c3dcd74693828 100644 (file)
 /*#define SEM_NSEMS_MAX _POSIX_SEM_NSEMS_MAX */
 /*#define SEM_VALUE_MAX _POSIX_SEM_VALUE_MAX */
 /*#define SIGQUEUE_MAX _POSIX_SIGQUEUE_MAX */
+#define SSIZE_MIN LONG_MIN
 #define SSIZE_MAX LONG_MAX
-#define SIZE_MAX ULONG_MAX
 /*#define STREAM_MAX _POSIX_STREAM_MAX */
 /*#define TIMER_MAX _POSIX_TIMER_MAX */
 #define TZNAME_MAX _POSIX_TZNAME_MAX
 
+
 #ifdef _LIMITS_EXTENSION
 /* some things are just too big for pedagogy (X!) */
 #include <sys/limits.h>
index 2a5ed9520483356d6286ebf2210531e794782de6..4aa5381aebcdd0675808ccad0bd17daca6b8659b 100644 (file)
@@ -1,8 +1,14 @@
-#ifndef _STDINT_H_
-#define _STDINT_H_ 1
+#ifndef _STDINT_GENERIC_H_
+#define _STDINT_GENERIC_H_ 1
 
+/*
+ * Default for 32 bit architectures, overriden by
+ * /$objtype/include/ape/stdint.h if needed.
+ */
+#ifndef _STDINT_ARCH_H_
 typedef int _intptr_t;
 typedef unsigned int _uintptr_t;
+#endif
 
 typedef char int8_t;
 typedef short int16_t;
@@ -12,6 +18,7 @@ typedef unsigned char uint8_t;
 typedef unsigned short uint16_t;
 typedef unsigned int uint32_t;
 typedef unsigned long long uint64_t;
+
 typedef _intptr_t intptr_t;
 typedef _uintptr_t uintptr_t;
 
@@ -35,4 +42,11 @@ typedef _uintptr_t uintptr_t;
 #define UINT32_MAX     0xffffffffL
 #define UINT64_MAX     0xffffffffffffffffULL
 
+/* 
+ * Right now, all of our size_t types are 32 bit, even on
+ * 64 bit architectures.
+ */
+#define SIZE_MIN       UINT32_MIN
+#define SIZE_MAX       UINT32_MAX
+
 #endif