From a0fcc8e5dee6f61c12ce44503edd26e699d5e663 Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Sat, 28 Jul 2018 14:27:28 +0100 Subject: Tests: Fix undefined behaviour in css_fixed printing. test/number.c:137:22: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself --- test/number.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/number.c b/test/number.c index d255f4c..7b0d10f 100644 --- a/test/number.c +++ b/test/number.c @@ -133,7 +133,7 @@ void run_test(const uint8_t *data, size_t len, const char *exp, size_t explen) void print_css_fixed(char *buf, size_t len, css_fixed f) { -#define ABS(x) (uint32_t)((x) < 0 ? -(x) : (x)) +#define ABS(x) (uint32_t)((x) < 0 ? -((int64_t)x) : (x)) uint32_t uintpart = FIXTOINT(ABS(f)); /* + 500 to ensure round to nearest (division will truncate) */ uint32_t fracpart = ((ABS(f) & 0x3ff) * 1000 + 500) / (1 << 10); -- cgit v1.2.3