2 Lexical conventions [lex]

2.11 Keywords [lex.key]

The identifiers shown in Table [tab:keywords] are reserved for use as keywords (that is, they are unconditionally treated as keywords in phase 7) except in an attribute-token ([dcl.attr.grammar]):

Table 5 — Keywords
alignas continue friend register true
alignof decltype goto reinterpret_cast try
asm default if return typedef
auto delete inline short typeid
bool do int signed typename
break double long sizeof union
case dynamic_cast mutable static unsigned
catch else namespace static_assert using
char enum new static_cast virtual
char16_t explicit noexcept struct void
char32_t export nullptr switch volatile
class extern operator template wchar_t
const false private this while
constexpr float protected thread_local
const_cast for public throw

Note: The export and register keywords are unused but are reserved for future use. — end note ]

Furthermore, the alternative representations shown in Table [tab:alternative.representations] for certain operators and punctuators ([lex.digraph]) are reserved and shall not be used otherwise:

Table 6 — Alternative representations
and and_eq bitand bitor compl not
not_eq or or_eq xor xor_eq