The C++ standard (ISO/IEC 14882:03) states the following (2.11/2):
Furthermore, the alternative representations shown in Table 4 for certain operators and punctuators (2.5) are reserved and shall not be used otherwise:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq
I have tried using these with multiple compilers without problems.
From my understanding I'm only forbidden to use these as identifier names. English isn't my first language, so it would be nice if someone could verify that I can indeed use these bit-wise mnemonics in expressions (i.e., "int i = not 0;").
EDIT: I should probably point out that I'm not going to obscure code by using these (if they are valid). It's just for general knowledge. =)
Thanks!