+# Longness only used for type promotion.
+# Actual compile time size used for conversions.
+
# 7.18 Integer types <stdint.h>
cdef extern from "stdint.h" nogil:
# 7.18.1 Integer types
# 7.18.1.1 Exact-width integer types
- ctypedef signed int int8_t
- ctypedef signed int int16_t
- ctypedef signed int int32_t
- ctypedef signed int int64_t
- ctypedef unsigned int uint8_t
- ctypedef unsigned int uint16_t
- ctypedef unsigned int uint32_t
- ctypedef unsigned int uint64_t
+ ctypedef signed char int8_t
+ ctypedef signed short int16_t
+ ctypedef signed int int32_t
+ ctypedef signed long int64_t
+ ctypedef unsigned char uint8_t
+ ctypedef unsigned short uint16_t
+ ctypedef unsigned int uint32_t
+ ctypedef unsigned long uint64_t
# 7.18.1.2 Minimum-width integer types
- ctypedef signed int int_least8_t
- ctypedef signed int int_least16_t
- ctypedef signed int int_least32_t
- ctypedef signed int int_least64_t
- ctypedef unsigned int uint_least8_t
- ctypedef unsigned int uint_least16_t
- ctypedef unsigned int uint_least32_t
- ctypedef unsigned int uint_least64_t
+ ctypedef signed char int_least8_t
+ ctypedef signed short int_least16_t
+ ctypedef signed int int_least32_t
+ ctypedef signed long int_least64_t
+ ctypedef unsigned char uint_least8_t
+ ctypedef unsigned short uint_least16_t
+ ctypedef unsigned int uint_least32_t
+ ctypedef unsigned long uint_least64_t
# 7.18.1.3 Fastest minimum-width integer types
- ctypedef signed int int_fast8_t
- ctypedef signed int int_fast16_t
- ctypedef signed int int_fast32_t
- ctypedef signed int int_fast64_t
- ctypedef unsigned int uint_fast8_t
- ctypedef unsigned int uint_fast16_t
- ctypedef unsigned int uint_fast32_t
- ctypedef unsigned int uint_fast64_t
+ ctypedef signed char int_fast8_t
+ ctypedef signed short int_fast16_t
+ ctypedef signed int int_fast32_t
+ ctypedef signed long int_fast64_t
+ ctypedef unsigned char uint_fast8_t
+ ctypedef unsigned short uint_fast16_t
+ ctypedef unsigned int uint_fast32_t
+ ctypedef unsigned long uint_fast64_t
# 7.18.1.4 Integer types capable of holding object pointers
- ctypedef signed int intptr_t
- ctypedef unsigned int uintptr_t
+ ctypedef ssize_t intptr_t
+ ctypedef size_t uintptr_t
# 7.18.1.5 Greatest-width integer types
- ctypedef signed int intmax_t
- ctypedef unsigned int uintmax_t
+ ctypedef signed long long intmax_t
+ ctypedef unsigned long long uintmax_t
# 7.18.2 Limits of specified-width integer types
# 7.18.2.1 Limits of exact-width integer types