| decl_var | ::= | type [id [[[dot_expr]]] ]; |
| | | common_decl | |
| | | [storage] ctype COMMA_LIST(d_ident) ; | |
| | | [storage] [const_vol] id COMMA_LIST(d_ident) ; | |
| | | [storage] fn_ctype ( * d_ident ) ( PARAMSEQ(name_opt_decl, ε) ) = initialize ; | |
| | | typedef ctype typedef_ident ; | |
| one_decl | ::= | common_decl |
| | | [storage] ctype id; | |
| | | [storage] [const_vol] id d_ident ; | |
| common_decl | ::= | ctype; |
| | | funproto | |
| | | [storage] ctype d_ident = initialize ; | |
| | | [storage] [const_vol] id d_ident = initialize ; | |
| | | [storage] fn_ctype ( * d_ident ) ( PARAMSEQ(name_opt_decl, ε) ) ; | |
| | | decl_ident ( [COMMA_LIST(expr)] ) ; | |
| initialize | ::= | dot_expr |
| | | { [COMMA_LIST(dot_expr)] } | |
| decl_ident | ::= | DeclarerId |
| | | metaidDeclarer |