[lex.key] (original) (raw)
5 Lexical conventions [lex]
5.12 Keywords [lex.key]
keyword:
any identifier listed in Table 5
import-keyword
module-keyword
export-keyword
The identifiers shown in Table 5 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]).
[Note 1:
The register keyword is unused but is reserved for future use.
— _end note_]
Table 5 — Keywords [tab:lex.key]
🔗alignas | constinit | extern | protected | throw |
---|---|---|---|---|
🔗alignof | const_cast | false | public | true |
🔗asm | continue | float | register | try |
🔗auto | contract_assert | for | reinterpret_cast | typedef |
🔗bool | co_await | friend | requires | typeid |
🔗break | co_return | goto | return | typename |
🔗case | co_yield | if | short | union |
🔗catch | decltype | inline | signed | unsigned |
🔗char | default | int | sizeof | using |
🔗char8_t | delete | long | static | virtual |
🔗char16_t | do | mutable | static_assert | void |
🔗char32_t | double | namespace | static_cast | volatile |
🔗class | dynamic_cast | new | struct | wchar_t |
🔗concept | else | noexcept | switch | while |
🔗const | enum | nullptr | template | |
🔗consteval | explicit | operator | this | |
🔗constexpr | export | private | thread_local |
Furthermore, the alternative representations shown in Table 6 for certain operators and punctuators ([lex.digraph]) are reserved and shall not be used otherwise.
Table 6 — Alternative representations [tab:lex.key.digraph]
🔗and | and_eq | bitand | bitor | compl | not |
---|---|---|---|---|---|
🔗not_eq | or | or_eq | xor | xor_eq |