summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2023-02-16 17:59:50 +0200
committerLasse Collin <lasse.collin@tukaani.org>2023-02-16 17:59:50 +0200
commit718b22a6c5e3ee5de123323ea798872381f9320e (patch)
treedfa3d5581788797423ad56021a7cb6ed6ea18b2d
parent87c53553fa7d50f777b4edfa99f2083628f590fe (diff)
downloadxz-718b22a6c5e3ee5de123323ea798872381f9320e.tar.gz
liblzma: Silence a warning from MSVC.
It gives C4146 here since unary minus with unsigned integer is still unsigned (which is the intention here). Doing it with substraction makes it clearer and avoids the warning. Thanks to Nathan Moinvaziri for reporting this.
-rw-r--r--src/liblzma/check/crc64_fast.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/liblzma/check/crc64_fast.c b/src/liblzma/check/crc64_fast.c
index db44633..e686dbd 100644
--- a/src/liblzma/check/crc64_fast.c
+++ b/src/liblzma/check/crc64_fast.c
@@ -256,7 +256,7 @@ crc64_clmul(const uint8_t *buf, size_t size, uint64_t crc)
// C = buf + size == aligned_buf + size2
// D = buf + size + skip_end == aligned_buf + size2 + skip_end
const size_t skip_start = (size_t)((uintptr_t)buf & 15);
- const size_t skip_end = (size_t)(-(uintptr_t)(buf + size) & 15);
+ const size_t skip_end = (size_t)((0U - (uintptr_t)(buf + size)) & 15);
const __m128i *aligned_buf = (const __m128i *)(
(uintptr_t)buf & ~(uintptr_t)15);