This is awkward, but the bitwise AND operator is defined in the C++ standard as follows (emphasis mine).
The usual arithmetic conversions are performe
Legally, we could consider all bitwise operations to have undefined behaviour as they are not actually defined.
More reasonably, we are expected to apply common sense and refer to the common meanings of these operations, applying them to the bits of the operands (hence the term "bitwise").
But nothing actually states that. Shame my answer can't be considered normative wording.