statement
feroldi opened this issue · 0 comments
feroldi commented
statement:
labeled-statement
compound-statement
expression-statement
selection-statement
iteration-statement
jump-statement
// missing `asm` statement
labeled-statement:
identifier ':' statement
'case' constant-expression ':' statement
'default' ':' statement
compound-statement:
'{' block-item-list? '}'
block-item-list:
block-item
block-item-list block-item
block-item:
declaration
statement
expression-statement:
expression? ';'
selection-statement:
'if' '(' expression ')' statement ('else' statement)?
'switch' '(' expression ')' statement
iteration-statement:
'while' '(' expression ')' statement
'do' statement 'while' '(' expression ')' ';'
'for' '(' expression? ';' expression? ';' expression? ')' statement
'for' '(' declaration expression? ';' expression? ')' statement
jump-statement:
'goto' identifier ';'
'continue' ';'
'break' ';'
'return' expression? ';'