summaryrefslogtreecommitdiff
path: root/bits.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2009-01-05 21:47:53 +0000
committerEric S. Raymond <esr@thyrsus.com>2009-01-05 21:47:53 +0000
commitb733f7ba16cc88b9dca875998c57bbb09b113b22 (patch)
tree6ddae3b1683a3f4459f0d17ad702aea5a7ab96a7 /bits.c
parentce47fae04c9742560ae5dedb92c485263dcb89f9 (diff)
downloadgpsd-b733f7ba16cc88b9dca875998c57bbb09b113b22.tar.gz
This diff goes most of the way to getting us splint-clean again.
Diffstat (limited to 'bits.c')
-rw-r--r--bits.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/bits.c b/bits.c
index e12891a2..dc508b88 100644
--- a/bits.c
+++ b/bits.c
@@ -25,7 +25,7 @@ unsigned long long ubits(char buf[], unsigned int start, unsigned int width)
unsigned int i;
unsigned end;
- assert(width <= sizeof(long long) * BITS_PER_BYTE);
+ /*@i1@*/assert(width <= sizeof(long long) * BITS_PER_BYTE);
for (i = start / BITS_PER_BYTE; i < (start + width + BITS_PER_BYTE - 1) / BITS_PER_BYTE; i++) {
fld <<= BITS_PER_BYTE;
fld |= (unsigned char)buf[i];
@@ -59,11 +59,13 @@ signed long long sbits(char buf[], unsigned int start, unsigned int width)
unsigned long long un = ubits(buf, start, width);
signed long long fld;
+ /*@ +relaxtypes */
if (un & (1 << width))
fld = -(un & ~(1 << width));
else
fld = (signed long long)un;
return fld;
+ /*@ -relaxtypes */
}