diff --git a/liba/include/stdint.h b/liba/include/stdint.h index 34f8c5f03..db274d276 100644 --- a/liba/include/stdint.h +++ b/liba/include/stdint.h @@ -11,6 +11,9 @@ typedef signed short int16_t; typedef signed int int32_t; typedef signed long long int64_t; +typedef unsigned int uintptr_t; +typedef signed int intptr_t; + typedef uint8_t uint_fast8_t; typedef uint16_t uint_fast16_t; typedef uint32_t uint_fast32_t; diff --git a/liba/test/stdint.c b/liba/test/stdint.c index 4165837ec..04645b838 100644 --- a/liba/test/stdint.c +++ b/liba/test/stdint.c @@ -13,6 +13,9 @@ QUIZ_CASE(liba_stdint_size) { assert(sizeof(int16_t) == 2); assert(sizeof(int32_t) == 4); assert(sizeof(int64_t) == 8); + + assert(sizeof(uintptr_t) == sizeof(void *)); + assert(sizeof(intptr_t) == sizeof(void *)); } QUIZ_CASE(liba_stdint_signedness) { @@ -25,4 +28,7 @@ QUIZ_CASE(liba_stdint_signedness) { assert_unsigned(uint16_t); assert_unsigned(uint32_t); assert_unsigned(uint64_t); + + assert_signed(intptr_t); + assert_unsigned(uintptr_t); }