-#define mutt_bit_alloc(n) p_new(char, (n + 7) / 8)
-#define mutt_bit_set(v,n) v[n/8] |= (1 << (n % 8))
-#define mutt_bit_unset(v,n) v[n/8] &= ~(1 << (n % 8))
-#define mutt_bit_toggle(v,n) v[n/8] ^= (1 << (n % 8))
-#define mutt_bit_isset(v,n) (v[n/8] & (1 << (n % 8)))
+#define mutt_bit_set(v,n) (v[n / 8] |= (1 << (n & 7)))
+#define mutt_bit_unset(v,n) (v[n / 8] &= ~(1 << (n & 7)))
+#define mutt_bit_toggle(v,n) (v[n / 8] ^= (1 << (n & 7)))
+#define mutt_bit_isset(v,n) (v[n / 8] & (1 << (n & 7)))