Boost logo

Boost :

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


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk