additive_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
and_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
boolean_literal |
'false'
'true' |
c_char |
"\'"
'\"'
'\'
'\?'
'\U'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\u'
'\v'
'\x'
ANY_CHARACTER_EXCEPT_NEWLINE_SQUOTE_BACKSLASH |
c_char_sequence |
"\'"
'\"'
'\'
'\?'
'\U'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\u'
'\v'
'\x'
ANY_CHARACTER_EXCEPT_NEWLINE_SQUOTE_BACKSLASH |
character_literal |
"'"
"L'" |
conditional_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
control_line |
'#' |
decimal_literal |
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9' |
digit |
DIGIT |
elif_group |
'#' |
else_group |
'#' |
endif_line |
'#' |
equality_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
escape_sequence |
"\'"
'\"'
'\'
'\?'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\v'
'\x' |
exclusive_or_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
group |
ø
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT
NEWLINE |
group_part |
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT
NEWLINE |
h_char |
ANY_CHARACTER_EXCEPT_NEWLINE_GT |
h_char_sequence |
ANY_CHARACTER_EXCEPT_NEWLINE_GT |
header_name |
'"'
'<' |
hex_quad |
'0'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'A'
'B'
'C'
'D'
'E'
'F'
'a'
'b'
'c'
'd'
'e'
'f' |
hexadecimal_digit |
'0'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'A'
'B'
'C'
'D'
'E'
'F'
'a'
'b'
'c'
'd'
'e'
'f' |
hexadecimal_escape_sequence |
'\x' |
hexadecimal_literal |
'0X'
'0x' |
identifier |
'\U'
'\u'
'_'
ALPHA_CHARACTER |
identifier_list |
'\U'
'\u'
'_'
ALPHA_CHARACTER |
if_group |
'#' |
if_section |
'#' |
inclusive_or_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
integer_literal |
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9' |
integer_suffix |
'L'
'U'
'l'
'u' |
logical_and_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
logical_or_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
long_suffix |
'L'
'l' |
lparen |
LEFT_PARENTHESIS_WITHOUT_LEADING_WS |
multiplicative_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
new_line |
NEWLINE |
nondigit |
'\U'
'\u'
'_'
ALPHA_CHARACTER |
nonzero_digit |
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9' |
octal_digit |
'0'
'1'
'2'
'3'
'4'
'5'
'6'
'7' |
octal_escape_sequence |
'\' |
octal_literal |
'0' |
pp_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
pp_number |
'.'
DIGIT |
pp_tokens |
ø
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT |
preprocessing_file |
ø
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT
NEWLINE |
preprocessing_op_or_punc |
'!'
'!='
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'['
']'
'^'
'^='
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~' |
preprocessing_token |
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT |
primary_expression |
"'"
"L'"
'('
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
ALPHA_CHARACTER |
q_char |
ANY_CHARACTER_EXCEPT_NEWLINE_DQUOTE |
q_char_sequence |
ANY_CHARACTER_EXCEPT_NEWLINE_DQUOTE |
relational_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
replacement_list |
ø
"'"
"L'"
'!'
'!='
'"'
'##'
'#'
'%'
'%:%:'
'%:'
'%='
'%>'
'&&'
'&'
'&='
'('
')'
'*'
'*='
'+'
'++'
'+='
','
'-'
'--'
'-='
'->'
'->*'
'.'
'.*'
'...'
'/'
'/='
':'
'::'
':>'
';'
'<%'
'<'
'<:'
'<<'
'<<='
'<='
'='
'=='
'>'
'>='
'>>'
'>>='
'?'
'L"'
'['
'\U'
'\u'
']'
'^'
'^='
'_'
'and'
'and_eq'
'bitand'
'bitor'
'compl'
'delete'
'new'
'not'
'not_eq'
'or'
'or_eq'
'xor'
'xor_eq'
'{'
'|'
'|='
'||'
'}'
'~'
ALPHA_CHARACTER
ANY_NOT_YET_COVERED_NON_WS_CHARACTER
DIGIT |
s_char |
"\'"
'\"'
'\'
'\?'
'\U'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\u'
'\v'
'\x'
ANY_CHARACTER_EXCEPT_NEWLINE_DQUOTE_BACKSLASH |
s_char_sequence |
"\'"
'\"'
'\'
'\?'
'\U'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\u'
'\v'
'\x'
ANY_CHARACTER_EXCEPT_NEWLINE_DQUOTE_BACKSLASH |
shift_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
sign |
'+'
'-' |
simple_escape_sequence |
"\'"
'\"'
'\?'
'\\'
'\a'
'\b'
'\f'
'\n'
'\r'
'\t'
'\v' |
string_literal |
'"'
'L"' |
unary_expression |
"'"
"L'"
'!'
'('
'+'
'-'
'0'
'0X'
'0x'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
'\U'
'\u'
'_'
'~'
ALPHA_CHARACTER |
unary_operator |
'!'
'+'
'-'
'~' |
universal_character_name |
'\U'
'\u' |
unsigned_suffix |
'U'
'u' |