Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
139 lines (138 sloc) 76.2 KB
<?xml version="1.0" encoding="UTF-8"?>
<bgf:grammar xmlns:bgf="http://planet-sl.org/bgf"><!--identifier, letter_or_digit, letter, number, integer_number, integer, based_integer, base, extended_digit, approximate_number, exponent, character_string, pragma, argument, declaration, object_declaration, identifier_list, type, type_definition, type_mark, constraint, type_declaration, subtype_declaration, derived_type_definition, range_constraint, range, enumeration_type_definition, enumeration_literal, integer_type_definition, real_type_definition, accuracy_constraint, array_type_definition, index, discrete_range, index_constraint, aggregate, component_association, choice, record_type_definition, component_list, variant_part, discriminant, discriminant_constraint, access_type_definition, name, indexed_component, selected_component, predefined_attribute, literal, variable, expression, relation, simple_expression, term, factor, primary, relational_operator, adding_operator, unary_operator, multiplying_operator, qualified_expression, allocator, seqence_of_statements, statement, simple_statement, compound_statement, assignment_statement, subprogram_call_statement, subprogram_call, parameter_association, formal_parameter, actual_parameter, return_statement, if_statement, condition, case_statement, loop_statement, basic_loop, iteration_specification, loop_parameter, exit_statement, goto_statement, assert_statement, declarative_part, body, unit_body, subprogram_declaration, subprogram_specification, subprogram_nature, designator, formal_part, parameter_declaration, mode, subprogram_body, block, module_declaration, module_specification, module_nature, module_body, private_type_declaration, visibility_restriction, visibility_list, use_clause, renaming_declaration, initiate_statement, task_designator, entry_declaration, accept_statement, delay_statement, select_statement, select_alternative, abort_statement, compilation, compilation_unit, body_stub, exception_declaration, exception_handler, exception_choice, raise_statement, generic_clause, generic_parameter, generic_instantiation, generic_association, representation_specification, packing_specification, length_specification, enumeration_type_representation, record_type_representation, location, alignment_clause, address_specification, code_statement, exponentiating_operator, static_expression-->
<root>compilation</root>
<bgf:production><nonterminal>identifier</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>letter</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>underscore</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>letter_or_digit</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>letter_or_digit</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>letter</nonterminal></bgf:expression><bgf:expression><nonterminal>digit</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>letter</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>upper_case_letter</nonterminal></bgf:expression><bgf:expression><nonterminal>lower_case_letter</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>number</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>integer_number</nonterminal></bgf:expression><bgf:expression><nonterminal>approximate_number</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>integer_number</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>integer</nonterminal></bgf:expression><bgf:expression><nonterminal>based_integer</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>integer</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>digit</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>underscore</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>digit</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>based_integer</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>base</nonterminal></bgf:expression><bgf:expression><terminal>#</terminal></bgf:expression><bgf:expression><nonterminal>extended_digit</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>underscore</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>extended_digit</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>base</nonterminal><bgf:expression><nonterminal>integer</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>extended_digit</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>digit</nonterminal></bgf:expression><bgf:expression><nonterminal>letter</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>approximate_number</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>integer</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression><bgf:expression><nonterminal>integer</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>E</terminal></bgf:expression><bgf:expression><nonterminal>exponent</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>integer</nonterminal></bgf:expression><bgf:expression><terminal>E</terminal></bgf:expression><bgf:expression><nonterminal>exponent</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>exponent</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><optional><bgf:expression><terminal>+</terminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>integer</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>-</terminal></bgf:expression><bgf:expression><nonterminal>integer</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>character_string</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>DQUOTE</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>character</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><nonterminal>DQUOTE</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>pragma</nonterminal><bgf:expression><sequence><bgf:expression><terminal>pragma</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>argument</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>argument</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>argument</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><nonterminal>character_string</nonterminal></bgf:expression><bgf:expression><nonterminal>number</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>declaration</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>object_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>type_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>subtype_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>private_type_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>subprogram_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>module_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>entry_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>exception_declaration</nonterminal></bgf:expression><bgf:expression><nonterminal>renaming_declaration</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>object_declaration</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>identifier_list</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><optional><bgf:expression><terminal>constant</terminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>type</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>:=</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>identifier_list</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>type</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>type_definition</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>type_definition</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>enumeration_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>integer_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>real_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>array_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>record_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>access_type_definition</nonterminal></bgf:expression><bgf:expression><nonterminal>derived_type_definition</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>type_mark</nonterminal><bgf:expression><choice><bgf:expression><marked><mark>type_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><marked><mark>subtype_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>constraint</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>range_constraint</nonterminal></bgf:expression><bgf:expression><nonterminal>accuracy_constraint</nonterminal></bgf:expression><bgf:expression><nonterminal>index_constraint</nonterminal></bgf:expression><bgf:expression><nonterminal>discriminant_constraint</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>type_declaration</nonterminal><bgf:expression><sequence><bgf:expression><terminal>type</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>type_definition</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>subtype_declaration</nonterminal><bgf:expression><sequence><bgf:expression><terminal>subtype</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>derived_type_definition</nonterminal><bgf:expression><sequence><bgf:expression><terminal>new</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>range_constraint</nonterminal><bgf:expression><sequence><bgf:expression><terminal>range</terminal></bgf:expression><bgf:expression><nonterminal>range</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>range</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><terminal>..</terminal></bgf:expression><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>enumeration_type_definition</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>enumeration_literal</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>enumeration_literal</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>enumeration_literal</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><nonterminal>character_literal</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>integer_type_definition</nonterminal><bgf:expression><nonterminal>range_constraint</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>real_type_definition</nonterminal><bgf:expression><nonterminal>accuracy_constraint</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>accuracy_constraint</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><terminal>digits</terminal></bgf:expression><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>range_constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>delta</terminal></bgf:expression><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>range_constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>array_type_definition</nonterminal><bgf:expression><sequence><bgf:expression><terminal>array</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>index</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>index</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><terminal>of</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>index</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>discrete_range</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><terminal>range</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>range</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>index_constraint</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>aggregate</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>component_association</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>component_association</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>component_association</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>choice</terminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>|</terminal></bgf:expression><bgf:expression><nonterminal>choice</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>choice</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>others</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>record_type_definition</nonterminal><bgf:expression><sequence><bgf:expression><terminal>record</terminal></bgf:expression><bgf:expression><nonterminal>component_list</nonterminal></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>record</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>component_list</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><star><bgf:expression><nonterminal>object_declaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>variant_part</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>null</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>variant_part</nonterminal><bgf:expression><sequence><bgf:expression><terminal>case</terminal></bgf:expression><bgf:expression><nonterminal>discriminant</nonterminal></bgf:expression><bgf:expression><terminal>of</terminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>choice</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>|</terminal></bgf:expression><bgf:expression><nonterminal>choice</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression><bgf:expression><nonterminal>component_list</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>case</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>discriminant</nonterminal><bgf:expression><sequence><bgf:expression><marked><mark>constant_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><terminal>..</terminal></bgf:expression><bgf:expression><marked><mark>component_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>discriminant_constraint</nonterminal><bgf:expression><nonterminal>aggregate</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>access_type_definition</nonterminal><bgf:expression><sequence><bgf:expression><terminal>access</terminal></bgf:expression><bgf:expression><nonterminal>type</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>name</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><nonterminal>indexed_component</nonterminal></bgf:expression><bgf:expression><nonterminal>selected_component</nonterminal></bgf:expression><bgf:expression><nonterminal>predefined_attribute</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>indexed_component</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>selected_component</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>predefined_attribute</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>'</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>literal</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>number</nonterminal></bgf:expression><bgf:expression><nonterminal>enumeration_literal</nonterminal></bgf:expression><bgf:expression><nonterminal>character_string</nonterminal></bgf:expression><bgf:expression><terminal>null</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>variable</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression><bgf:expression><terminal>all</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>expression</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>relation</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>and</terminal></bgf:expression><bgf:expression><nonterminal>relation</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>relation</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>or</terminal></bgf:expression><bgf:expression><nonterminal>relation</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>relation</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>xor</terminal></bgf:expression><bgf:expression><nonterminal>relation</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>relation</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>relational_operator</nonterminal></bgf:expression><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><terminal>not</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>in</terminal></bgf:expression><bgf:expression><nonterminal>range</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><terminal>not</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>in</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>simple_expression</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>unary_operator</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>term</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><nonterminal>adding_operator</nonterminal></bgf:expression><bgf:expression><nonterminal>term</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>term</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>factor</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><nonterminal>multiplying_operator</nonterminal></bgf:expression><bgf:expression><nonterminal>factor</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>factor</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>primary</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>exponentiating_operator</nonterminal></bgf:expression><bgf:expression><nonterminal>primary</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>primary</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>literal</nonterminal></bgf:expression><bgf:expression><nonterminal>aggregate</nonterminal></bgf:expression><bgf:expression><nonterminal>variable</nonterminal></bgf:expression><bgf:expression><nonterminal>allocator</nonterminal></bgf:expression><bgf:expression><nonterminal>subprogram_call</nonterminal></bgf:expression><bgf:expression><nonterminal>qualified_expression</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>relational_operator</nonterminal><bgf:expression><choice><bgf:expression><terminal>=</terminal></bgf:expression><bgf:expression><terminal>/=</terminal></bgf:expression><bgf:expression><terminal>&lt;</terminal></bgf:expression><bgf:expression><terminal>&lt;=</terminal></bgf:expression><bgf:expression><terminal>&gt;</terminal></bgf:expression><bgf:expression><terminal>&gt;=</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>adding_operator</nonterminal><bgf:expression><choice><bgf:expression><terminal>+</terminal></bgf:expression><bgf:expression><terminal>-</terminal></bgf:expression><bgf:expression><terminal>&amp;</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>unary_operator</nonterminal><bgf:expression><choice><bgf:expression><terminal>+</terminal></bgf:expression><bgf:expression><terminal>-</terminal></bgf:expression><bgf:expression><terminal>not</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>multiplying_operator</nonterminal><bgf:expression><choice><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><terminal>/</terminal></bgf:expression><bgf:expression><terminal>mod</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>qualified_expression</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><nonterminal>aggregate</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>allocator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>new</terminal></bgf:expression><bgf:expression><nonterminal>qualified_expression</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>seqence_of_statements</nonterminal><bgf:expression><star><bgf:expression><nonterminal>statement</nonterminal></bgf:expression></star></bgf:expression>
</bgf:production><bgf:production><nonterminal>statement</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>simple_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>compound_statement</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>&lt;&lt;</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>&gt;&gt;</terminal></bgf:expression><bgf:expression><nonterminal>statement</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>simple_statement</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>assignment_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>subprogram_call_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>exit_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>return_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>goto_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>assert_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>initiate_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>delay_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>raise_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>abort_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>code_statement</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>null</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>compound_statement</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>if_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>case_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>loop_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>accept_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>select_statement</nonterminal></bgf:expression><bgf:expression><nonterminal>block</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>assignment_statement</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>variable</nonterminal></bgf:expression><bgf:expression><terminal>:=</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_call_statement</nonterminal><bgf:expression><nonterminal>subprogram_call</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_call</nonterminal><bgf:expression><sequence><bgf:expression><marked><mark>subprogram_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>parameter_association</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>parameter_association</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>parameter_association</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>formal_parameter</nonterminal></bgf:expression><bgf:expression><terminal>:=</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>actual_parameter</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>formal_parameter</nonterminal></bgf:expression><bgf:expression><terminal>=:</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>actual_parameter</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>formal_parameter</nonterminal></bgf:expression><bgf:expression><terminal>:=:</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>actual_parameter</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>formal_parameter</nonterminal><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>actual_parameter</nonterminal><bgf:expression><nonterminal>expression</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>return_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>return</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>if_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>if</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression><bgf:expression><terminal>then</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>elseif</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression><bgf:expression><terminal>then</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>else</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>if</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>condition</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>and</terminal></bgf:expression><bgf:expression><terminal>then</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>or</terminal></bgf:expression><bgf:expression><terminal>else</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>case_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>case</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression><bgf:expression><terminal>of</terminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>choice</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>|</terminal></bgf:expression><bgf:expression><nonterminal>choice</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>case</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>loop_statement</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>iteration_specification</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>basic_loop</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>basic_loop</nonterminal><bgf:expression><sequence><bgf:expression><terminal>loop</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>loop</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>iteration_specification</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><nonterminal>loop_parameter</nonterminal></bgf:expression><bgf:expression><terminal>in</terminal></bgf:expression><bgf:expression><optional><bgf:expression><terminal>reverse</terminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>while</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>loop_parameter</nonterminal><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>exit_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>exit</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>goto_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>goto</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>assert_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>assert</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>declarative_part</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>use_clause</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>declaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>representation_specification</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>body</nonterminal></bgf:expression></star></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>body</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>visibility_restriction</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>unit_body</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><nonterminal>body_stub</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>unit_body</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>subprogram_body</nonterminal></bgf:expression><bgf:expression><nonterminal>module_specification</nonterminal></bgf:expression><bgf:expression><nonterminal>module_body</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_declaration</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_specification</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>generic_instantiation</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_specification</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>generic_clause</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>subprogram_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>formal_part</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>return</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_nature</nonterminal><bgf:expression><choice><bgf:expression><terminal>function</terminal></bgf:expression><bgf:expression><terminal>procedure</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>designator</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><nonterminal>character_string</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>formal_part</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>parameter_declaration</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>;</terminal></bgf:expression><bgf:expression><nonterminal>parameter_declaration</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>parameter_declaration</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>identifier_list</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>mode</nonterminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>constraint</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>:=</terminal></bgf:expression><bgf:expression><nonterminal>expression</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>mode</nonterminal><bgf:expression><choice><bgf:expression><optional><bgf:expression><terminal>in</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>out</terminal></bgf:expression><bgf:expression><sequence><bgf:expression><terminal>in</terminal></bgf:expression><bgf:expression><terminal>out</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>subprogram_body</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_specification</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>declarative_part</nonterminal></bgf:expression><bgf:expression><terminal>begin</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>exception</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>exception_handler</nonterminal></bgf:expression></star></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>designator</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>block</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>declare</terminal></bgf:expression><bgf:expression><nonterminal>declarative_part</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>begin</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>exception</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>exception_handler</nonterminal></bgf:expression></star></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>module_declaration</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>visibility_restriction</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>module_declaration</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>module_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>generic_instantiation</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>module_specification</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>generic_clause</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>module_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>identifier_list</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>declarative_part</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>private</terminal></bgf:expression><bgf:expression><nonterminal>declarative_part</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>module_nature</nonterminal><bgf:expression><choice><bgf:expression><terminal>package</terminal></bgf:expression><bgf:expression><terminal>task</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>module_body</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>module_nature</nonterminal></bgf:expression><bgf:expression><terminal>body</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><nonterminal>declarative_part</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>begin</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>exception</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>exception_handler</nonterminal></bgf:expression></star></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>private_type_declaration</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><terminal>restricted</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>type</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><terminal>private</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>visibility_restriction</nonterminal><bgf:expression><sequence><bgf:expression><terminal>restricted</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>visibility_list</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>visibility_list</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><marked><mark>unit_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><marked><mark>unit_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>use_clause</nonterminal><bgf:expression><sequence><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><marked><mark>module_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><marked><mark>module_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>renaming_declaration</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression><bgf:expression><terminal>renames</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><terminal>exception</terminal></bgf:expression><bgf:expression><terminal>renames</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression><bgf:expression><terminal>renames</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>module_nature</nonterminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>renames</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>initiate_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>initiate</terminal></bgf:expression><bgf:expression><nonterminal>task_designator</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>task_designator</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>task_designator</nonterminal><bgf:expression><sequence><bgf:expression><marked><mark>task_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>entry_declaration</nonterminal><bgf:expression><sequence><bgf:expression><terminal>entry</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>discrete_range</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>formal_part</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>accept_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>accept</terminal></bgf:expression><bgf:expression><marked><mark>entry_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>formal_part</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>do</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>delay_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>delay</terminal></bgf:expression><bgf:expression><nonterminal>simple_expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>select_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>select</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>select_alternative</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>or</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>condition</nonterminal></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>select_alternative</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>else</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>select</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>select_alternative</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>accept_statement</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>delay_statement</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>abort_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>abort</terminal></bgf:expression><bgf:expression><nonterminal>task_designator</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>task_designator</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>compilation</nonterminal><bgf:expression><star><bgf:expression><nonterminal>compilation_unit</nonterminal></bgf:expression></star></bgf:expression>
</bgf:production><bgf:production><nonterminal>compilation_unit</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>visibility_restriction</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><terminal>separate</terminal></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>unit_body</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>body_stub</nonterminal><bgf:expression><choice><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_specification</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><terminal>separate</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>module_nature</nonterminal></bgf:expression><bgf:expression><terminal>body</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><terminal>separate</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>exception_declaration</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>identifier_list</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><terminal>exception</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>exception_handler</nonterminal><bgf:expression><sequence><bgf:expression><terminal>when</terminal></bgf:expression><bgf:expression><nonterminal>exception_choice</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>|</terminal></bgf:expression><bgf:expression><nonterminal>exception_choice</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>=&gt;</terminal></bgf:expression><bgf:expression><nonterminal>seqence_of_statements</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>exception_choice</nonterminal><bgf:expression><choice><bgf:expression><marked><mark>exception_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><terminal>others</terminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>raise_statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>rause</terminal></bgf:expression><bgf:expression><optional><bgf:expression><marked><mark>exception_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>generic_clause</nonterminal><bgf:expression><sequence><bgf:expression><terminal>generic</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>generic_parameter</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>;</terminal></bgf:expression><bgf:expression><nonterminal>generic_parameter</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>generic_parameter</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>parameter_declaration</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><nonterminal>subprogram_specification</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>is</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><optional><bgf:expression><terminal>restricted</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>type</terminal></bgf:expression><bgf:expression><nonterminal>identifier</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>generic_instantiation</nonterminal><bgf:expression><sequence><bgf:expression><terminal>new</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>generic_association</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>generic_association</nonterminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>generic_association</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>parameter_association</nonterminal></bgf:expression><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>formal_parameter</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>designator</nonterminal></bgf:expression></sequence></bgf:expression><bgf:expression><sequence><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>formal_parameter</nonterminal></bgf:expression><bgf:expression><terminal>is</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><nonterminal>type_mark</nonterminal></bgf:expression></sequence></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>representation_specification</nonterminal><bgf:expression><choice><bgf:expression><nonterminal>packing_specification</nonterminal></bgf:expression><bgf:expression><nonterminal>length_specification</nonterminal></bgf:expression><bgf:expression><nonterminal>record_type_representation</nonterminal></bgf:expression><bgf:expression><nonterminal>address_specification</nonterminal></bgf:expression><bgf:expression><nonterminal>enumeration_type_representation</nonterminal></bgf:expression></choice></bgf:expression>
</bgf:production><bgf:production><nonterminal>packing_specification</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><marked><mark>type_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><terminal>packing</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>length_specification</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><nonterminal>static_expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>enumeration_type_representation</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><marked><mark>type_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><nonterminal>aggregate</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>record_type_representation</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><marked><mark>type_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><terminal>record</terminal></bgf:expression><bgf:expression><optional><bgf:expression><sequence><bgf:expression><nonterminal>alignment_clause</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></optional></bgf:expression><bgf:expression><star><bgf:expression><sequence><bgf:expression><marked><mark>component_name</mark><bgf:expression><nonterminal>name</nonterminal></bgf:expression></marked></bgf:expression><bgf:expression><nonterminal>location</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></star></bgf:expression><bgf:expression><terminal>end</terminal></bgf:expression><bgf:expression><terminal>record</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>location</nonterminal><bgf:expression><sequence><bgf:expression><terminal>at</terminal></bgf:expression><bgf:expression><nonterminal>static_expression</nonterminal></bgf:expression><bgf:expression><terminal>range</terminal></bgf:expression><bgf:expression><nonterminal>range</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>alignment_clause</nonterminal><bgf:expression><sequence><bgf:expression><terminal>at</terminal></bgf:expression><bgf:expression><terminal>mod</terminal></bgf:expression><bgf:expression><nonterminal>static_expression</nonterminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>address_specification</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><nonterminal>name</nonterminal></bgf:expression><bgf:expression><terminal>use</terminal></bgf:expression><bgf:expression><terminal>at</terminal></bgf:expression><bgf:expression><nonterminal>static_expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>code_statement</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>qualified_expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression>
</bgf:production><bgf:production><nonterminal>exponentiating_operator</nonterminal><bgf:expression><terminal>**</terminal></bgf:expression>
</bgf:production><bgf:production><nonterminal>static_expression</nonterminal><bgf:expression><nonterminal>expression</nonterminal></bgf:expression>
</bgf:production></bgf:grammar>