]> the.earth.li Git - onak.git/commit
Clean up use of shifts beyond composite types
authorJonathan McDowell <noodles@earth.li>
Mon, 19 Aug 2019 06:28:16 +0000 (07:28 +0100)
committerJonathan McDowell <noodles@earth.li>
Mon, 19 Aug 2019 06:28:16 +0000 (07:28 +0100)
commitda1f0ee80a15a9fb6a7d15e81f39ad9dc34db406
treef6546f1d61ae1a2f35316e7e16b8081f9d374403
parenta94e29c9a3763f96b1c773f0818b97e4fd0777b0
Clean up use of shifts beyond composite types

GCC with the -fsanitize=undefined flag issues complaints like:

runtime error: left shift of 232 by 24 places cannot be represented in
type 'int'

due to the fact we shift the byte values into a 64 bit value. Rather
than adding lots of casts split out the formation into a set of steps
that doesn't end up shifting the byte value, just the final 64 bit
value.
keydb_db4.c
keydb_fs.c