This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
stdint.h
- From: Shaun Jackman <sjackman at pathwayconnect dot com>
- To: newlib at sources dot redhat dot com
- Date: 03 Jul 2003 12:02:42 -0600
- Subject: stdint.h
- Organization: Pathway Connectivity
Well, now that the stdbool.h thread has died, I'd like to look at the
original reason for that thread in the first place. gcc does not provide
stdint.h (since it's target dependent), which would suggest it's a good
candidate for newlib to provide. The not-so-pretty list of symbols that
stdint.h is supposed to provide follows. libc provides an implementation
of stdint.h. Perhaps we could use that as a starting point.
Cheers,
Shaun
[Excerpt from C99, Annex B.17]
B.17 Integer types <stdint.h>
int8_t INT32_MIN UINT_FAST8_MAX
int16_t INT64_MIN UINT_FAST16_MAX
int32_t INT8_MAX UINT_FAST32_MAX
int64_t INT16_MAX UINT_FAST64_MAX
uint8_t INT32_MAX INTPTR_MIN
uint16_t INT64_MAX INTPTR_MAX
uint32_t UINT8_MAX UINTPTR_MAX
uint64_t UINT16_MAX INTMAX_MIN
int_least8_t UINT32_MAX INTMAX_MAX
int_least16_t UINT64_MAX UINTMAX_MAX
int_least32_t INT_LEAST8_MIN PTRDIFF_MIN
int_least64_t INT_LEAST16_MIN PTRDIFF_MAX
uint_least8_t INT_LEAST32_MIN SIG_ATOMIC_MIN
uint_least16_t INT_LEAST64_MIN SIG_ATOMIC_MAX
uint_least32_t INT_LEAST8_MAX SIZE_MAX
uint_least64_t INT_LEAST16_MAX WCHAR_MIN
int_fast8_t INT_LEAST32_MAX WCHAR_MAX
int_fast16_t INT_LEAST64_MAX WINT_MIN
int_fast32_t UINT_LEAST8_MAX WINT_MAX
int_fast64_t UINT_LEAST16_MAX INT8_C(value)
uint_fast8_t UINT_LEAST32_MAX INT16_C(value)
uint_fast16_t UINT_LEAST64_MAX INT32_C(value)
uint_fast32_t INT_FAST8_MIN INT64_C(value)
uint_fast64_t INT_FAST16_MIN UINT8_C(value)
intptr_t INT_FAST32_MIN UINT16_C(value)
uintptr_t INT_FAST64_MIN UINT32_C(value)
intmax_t INT_FAST8_MAX UINT64_C(value)
uintmax_t INT_FAST16_MAX INTMAX_C(value)
INT8_MIN INT_FAST32_MAX UINTMAX_C(value)
INT16_MIN INT_FAST64_MAX