[lex.key]

5 Lexical conventions [lex]

5.12 Keywords [lex.key]

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