summaryrefslogtreecommitdiff
path: root/bits.c
diff options
context:
space:
mode:
authorHal Murray <hmurray@megapathdsl.net>2016-09-09 14:16:26 -0700
committerGary E. Miller <gem@rellim.com>2016-09-09 14:53:52 -0700
commit621204f9fbd10af3f7e9e4115a354bfd780001af (patch)
treeeb653dfa8eec3f2683ce678cb38dbb00e5380b8a /bits.c
parent6d7b760d85886a5f5086d1beaaeb2a17d89dd9d3 (diff)
downloadgpsd-621204f9fbd10af3f7e9e4115a354bfd780001af.tar.gz
Fix warnings from left shifting a negative number.
Signed-off-by: Gary E. Miller <gem@rellim.com>
Diffstat (limited to 'bits.c')
-rw-r--r--bits.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/bits.c b/bits.c
index ed6744c0..8cbabc57 100644
--- a/bits.c
+++ b/bits.c
@@ -37,7 +37,7 @@ uint64_t ubits(unsigned char buf[], unsigned int start, unsigned int width, bool
fld >>= (CHAR_BIT - end);
}
- fld &= ~(-1LL << width);
+ fld &= ~(0xffffFFFFffffFFFF << width);
/* was extraction as a little-endian requested? */
if (le)
@@ -68,7 +68,7 @@ int64_t sbits(signed char buf[], unsigned int start, unsigned int width, bool le
assert(width > 0);
if (fld & (1LL << (width - 1))) {
- fld |= (-1LL << (width - 1));
+ fld |= (0xffffffffffffffff << (width - 1));
}
return (int64_t)fld;
}