From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2003-08-20 18:13:37


> #define xor )?BOOST_DETAIL_XOR(

FYI, you cannot legally define "xor" because it is specifically *not* an
identifier--even to the preprocessor. This is the primary difference
between "keywords" and textual "alternative tokens."

2.5/2 - "In all respects of the language, each alternative token behaves
the same, respectively, as its primary token, except for its spelling."

E.g. "#define ^" is invalid, and therefore "#define xor" is invalid.

16.1/4 (note #137) - "An alternative token (2.5) is not an identifier,
even when its spelling consists entirely of letters and underscores.
Therefore it is not subject to this replacement."

Regards,
Paul Mensonides