mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[liba] Proper testing of type signedness
Change-Id: I89ddc116ff33c384ba916f8f52e20347c49483f0
This commit is contained in:
committed by
Romain Goyet
parent
4e08d520da
commit
750b51dd2f
@@ -14,16 +14,17 @@ QUIZ_CASE(liba_stdint_size) {
|
||||
assert(sizeof(int64_t) == 8);
|
||||
}
|
||||
|
||||
#define assert_signed(type) assert((type)-1 < 0)
|
||||
#define assert_unsigned(type) assert((type)-1 >= 0)
|
||||
|
||||
QUIZ_CASE(liba_stdint_signedness) {
|
||||
int8_t i8 = -1;
|
||||
assert(i8 == -1);
|
||||
assert_signed(int8_t);
|
||||
assert_signed(int16_t);
|
||||
assert_signed(int32_t);
|
||||
assert_signed(int64_t);
|
||||
|
||||
int16_t i16 = -1;
|
||||
assert(i16 == -1);
|
||||
|
||||
int32_t i32 = -1;
|
||||
assert(i32 == -1);
|
||||
|
||||
int64_t i64 = -1;
|
||||
assert(i64 == -1);
|
||||
assert_unsigned(uint8_t);
|
||||
assert_unsigned(uint16_t);
|
||||
assert_unsigned(uint32_t);
|
||||
assert_unsigned(uint64_t);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user