I have some code that looks like:
static const std::string and(\" AND \");
This causes an error in g++ like so:
Row.cpp:140
They've been there since C++ 98. They're listed in the §2.5/2 of the standard (either the 1998 or the 2003 edition). The alternate tokens include: and, or, xor, not, bitand, bitor, compl, and_eq, or_eq, xor_eq, not, not_eq.
and
or
xor
not
bitand
bitor
compl
and_eq
or_eq
xor_eq
not_eq