diff --git a/src/util/bitset.h b/src/util/bitset.h
index 6f9e808c371..17ebc709eb8 100644
--- a/src/util/bitset.h
+++ b/src/util/bitset.h
@@ -366,7 +366,7 @@ public:
         if (count) {
             unsigned i = 0;
             while (count > LIMB_BITS) {
-                ret.m_val[i++] = ~I{0};
+                ret.m_val[i++] = I(~I{0});
                 count -= LIMB_BITS;
             }
             ret.m_val[i] = I(~I{0}) >> (LIMB_BITS - count);