equality_expression: relational_expression

equality_expression EQ_0P relational_expression equality_expression NE_0P relational_expression

and_expression:

equality_expression

and_expression AMPERSAND equality_expression // зарезервировано

exclusi ve_or_expressi on: and_expression

exclusive_or_expression CARET and_expression // зарезервировано

i nclusi ve_or_expressi on: exclusive_or_expression

inclusive_or_expression VERTICAL_BAR exclusive_or_expression

// зарезервировано

logical_and_expression:

i nclusi ve_or_expressi on

logical_and_expression AND_0P inclusive_or_expression

logical_xor_expression:

1ogi ca1_a nd_exp res s i on

logical_xor_expression X0R_0P logical_and_expression

logical_or_expression:

logical_xor_expression

logical_or_expression 0R_0P logical_xor_expression

conditional_expression: logical_or_expression

logical_or_expression QUESTION expression COLON

condi ti onal_expressi on

as s i gnment_expres si on: condi ti onal_expressi on

unary_expression assignment_operator assignment_expression

assignment_operator:

EQUAL

MUL_ASSIGN

DIV_ASSIGN

MOD_ASSIGN

ADD_ASSIGN

SUB_ASSIGN

LEFT_ASSIGN // зарезервировано

RIGHT_ASSIGN // зарезервировано

AND_ASSIGN // зарезервировано

XOR_ASSIGN // зарезервировано

0R_ASSIGN // зарезервировано

expression:

assignment_expression

expression COMMA assignment_expression

constant_expression: conditional_expression

declaration:

function_prototype SEMICOLON init_declarator_list SEMICOLON

function_prototype:

function_declarator RIGHT_PAREN

function_declarator:

function_header

functi on_header_wi th_pa rameters

function_header_with_parameters:

function_header parameter_declaration function_header_with_parameters COMMA parameter_declaration

function_header:

fully_specified_type IDENTIFIER LEFT_PAREN

parameter_declarator:

type_specifier IDENTIFIER

type_specifier IDENTIFIER LEFT_BRACKET RIGHT_BRACKET

parameter_declaration:

type_qualifier parameter_qualifier parameter_declarator parameter_quali fi er parameter_declarator type_qualifier parameter_qualifier parameter_type_specifier parameter_qualifier parameter_type_specifier

parameter_qualifier:

/* пусто */

IN

OUT

INOUT

parameter_type_speci fi er: type_specifier

type_specifier LEFTJRACKET RIGHT_BRACKET

init_declarator_list:

single_declaration

init_declarator_list COMMA IDENTIFIER init_declarator_l ist COMMA IDENTIFIER LEFTJRACKET RIGHT_BRACKET init_declarator_list COMMA IDENTIFIER LEFTJRACKET constant_expression RIGHTJRACKET initjjeclaratorjist COMMA IDENTIFIER EQUAL initializer

single_declaration: fully_specified_type fully_specified_type IDENTIFIER

f u 11 y_s pec i f i ed_ty pe IDENTIFIER LEFTJRACKET RIGHT JRACKET fully_specified_type IDENTIFIER LEFTJRACKET constant_expression RIGHT JRACKET fully_specified_type IDENTIFIER EQUAL initializer

// 'enum' и 'typedef' не поддерживаются

fully_speci fi ed_type: type_specifier

type_qualifier type_specifier CONST


⇐ вернуться назад | | далее ⇒