summaryrefslogtreecommitdiffstats
path: root/include/bitstring.h
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>1997-05-28 22:09:16 +0000
committerderaadt <deraadt@openbsd.org>1997-05-28 22:09:16 +0000
commit3545baa89bac6e9c7e941b503cbabb06bc32f067 (patch)
treeb60ffae7207ccc69367ffb99f57286f40ffa340c /include/bitstring.h
parentdoc broadcast addr better; frueauf@ira.uka.de (diff)
downloadwireguard-openbsd-3545baa89bac6e9c7e941b503cbabb06bc32f067.tar.xz
wireguard-openbsd-3545baa89bac6e9c7e941b503cbabb06bc32f067.zip
do {} while (0); the macros; jarle@runit.sintef.no
Diffstat (limited to 'include/bitstring.h')
-rw-r--r--include/bitstring.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/include/bitstring.h b/include/bitstring.h
index 5966a1d3f5d..6fe2215e2fa 100644
--- a/include/bitstring.h
+++ b/include/bitstring.h
@@ -69,27 +69,27 @@ typedef unsigned char bitstr_t;
(name)[_bit_byte(bit)] &= ~_bit_mask(bit)
/* clear bits start ... stop in bitstring */
-#define bit_nclear(name, start, stop) { \
+#define bit_nclear(name, start, stop) do { \
register bitstr_t *_name = name; \
register int _start = start, _stop = stop; \
while (_start <= _stop) { \
bit_clear(_name, _start); \
_start++; \
} \
-}
+} while (0)
/* set bits start ... stop in bitstring */
-#define bit_nset(name, start, stop) { \
+#define bit_nset(name, start, stop) do { \
register bitstr_t *_name = name; \
register int _start = start, _stop = stop; \
while (_start <= _stop) { \
bit_set(_name, _start); \
_start++; \
} \
-}
+} while (0)
/* find first bit clear in name */
-#define bit_ffc(name, nbits, value) { \
+#define bit_ffc(name, nbits, value) do { \
register bitstr_t *_name = name; \
register int _bit, _nbits = nbits, _value = -1; \
for (_bit = 0; _bit < _nbits; ++_bit) \
@@ -98,10 +98,10 @@ typedef unsigned char bitstr_t;
break; \
} \
*(value) = _value; \
-}
+} while (0)
/* find first bit set in name */
-#define bit_ffs(name, nbits, value) { \
+#define bit_ffs(name, nbits, value) do { \
register bitstr_t *_name = name; \
register int _bit, _nbits = nbits, _value = -1; \
for (_bit = 0; _bit < _nbits; ++_bit) \
@@ -110,6 +110,6 @@ typedef unsigned char bitstr_t;
break; \
} \
*(value) = _value; \
-}
+} while (0)
#endif /* !_BITSTRING_H_ */