Inline all rules that do not consume any character directly
This simplifies the trees significantly.
This commit is contained in:
parent
a41588c541
commit
3b5200c14c
534
grammar.js
534
grammar.js
File diff suppressed because it is too large
Load Diff
|
|
@ -142,14 +142,16 @@
|
||||||
; "limited"
|
; "limited"
|
||||||
; "synchronized"
|
; "synchronized"
|
||||||
; ]* @keyword.type
|
; ]* @keyword.type
|
||||||
(full_type_declaration
|
(full_type_declaration "is" @type.definition)
|
||||||
; (identifier) @type
|
(full_type_declaration (_ "access") @type.definition)
|
||||||
"is" @type.definition
|
|
||||||
; (access_type_definition "access" @keyword.type)
|
|
||||||
)
|
|
||||||
|
|
||||||
;; Highlight full subprogram specifications
|
;; Highlight full subprogram specifications
|
||||||
(subprogram_body (subprogram_specification) @function.spec)
|
(subprogram_body
|
||||||
|
[
|
||||||
|
(procedure_specification)
|
||||||
|
(function_specification)
|
||||||
|
] @function.spec
|
||||||
|
)
|
||||||
|
|
||||||
;; Highlight errors in red. This is not very useful in practice, as text will
|
;; Highlight errors in red. This is not very useful in practice, as text will
|
||||||
;; be highlighted as user types, and the error could be elsewhere in the code.
|
;; be highlighted as user types, and the error could be elsewhere in the code.
|
||||||
|
|
|
||||||
|
|
@ -3,14 +3,19 @@
|
||||||
;; See https://tree-sitter.github.io/tree-sitter/syntax-highlighting#local-variables
|
;; See https://tree-sitter.github.io/tree-sitter/syntax-highlighting#local-variables
|
||||||
|
|
||||||
(package_specification) @scope
|
(package_specification) @scope
|
||||||
(subprogram_specification) @scope
|
(procedure_specification) @scope
|
||||||
|
(function_specification) @scope
|
||||||
(block_statement) @scope
|
(block_statement) @scope
|
||||||
|
|
||||||
(procedure_specification name: (identifier) @definition.var)
|
(procedure_specification name: (_) @definition.var)
|
||||||
(function_specification name: (identifier) @definition.var)
|
(function_specification name: (_) @definition.var)
|
||||||
(package_specification name: (identifier) @definition.var)
|
(package_specification name: (_) @definition.var)
|
||||||
(package_body name: (identifier) @definition.var)
|
(package_body name: (_) @definition.var)
|
||||||
(generic_instantiation . name: (identifier) @definition.var)
|
(generic_instantiation . name: (_) @definition.var)
|
||||||
(defining_identifier_list (identifier) @definition.var)
|
(component_declaration (identifier) @definition.var)
|
||||||
|
(exception_declaration (identifier) @definition.var)
|
||||||
|
(formal_object_declaration (identifier) @definition.var)
|
||||||
|
(object_declaration (identifier) @definition.var)
|
||||||
|
(parameter_specification (identifier) @definition.var)
|
||||||
|
|
||||||
(identifier) @reference
|
(identifier) @reference
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,13 @@
|
||||||
(subprogram_body) @function.outer
|
(subprogram_body) @function.outer
|
||||||
(subprogram_body (non_empty_declarative_part) @function.inner)
|
(subprogram_body (non_empty_declarative_part) @function.inner)
|
||||||
(subprogram_body (handled_sequence_of_statements) @function.inner)
|
(subprogram_body (handled_sequence_of_statements) @function.inner)
|
||||||
(subprogram_specification) @function.outer
|
(function_specification) @function.outer
|
||||||
|
(procedure_specification) @function.outer
|
||||||
(package_specification) @function.outer
|
(package_specification) @function.outer
|
||||||
(package_body) @function.outer
|
(package_body) @function.outer
|
||||||
(if_statement) @block.outer
|
(if_statement) @block.outer
|
||||||
(if_statement (sequence_of_statements) @block.inner)
|
(if_statement statements: (_) @block.inner)
|
||||||
|
(if_statement else_statements: (_) @block.inner)
|
||||||
|
(elsif_statement_item statements: (_) @block.inner)
|
||||||
(loop_statement) @block.outer
|
(loop_statement) @block.outer
|
||||||
(loop_statement (sequence_of_statements) @block.inner)
|
(loop_statement statements: (_) @block.inner)
|
||||||
|
|
|
||||||
901
src/grammar.json
901
src/grammar.json
File diff suppressed because it is too large
Load Diff
5084
src/node-types.json
5084
src/node-types.json
File diff suppressed because it is too large
Load Diff
82254
src/parser.c
82254
src/parser.c
File diff suppressed because it is too large
Load Diff
|
|
@ -17,59 +17,35 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(access_to_object_definition
|
||||||
(type_definition
|
(identifier)))
|
||||||
(access_type_definition
|
(full_type_declaration
|
||||||
(access_to_object_definition
|
(identifier)
|
||||||
(subtype_indication
|
(access_to_object_definition
|
||||||
(identifier)))))))
|
(null_exclusion)
|
||||||
(type_declaration
|
(identifier)))
|
||||||
(full_type_declaration
|
(full_type_declaration
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(access_to_object_definition
|
||||||
(access_type_definition
|
(general_access_modifier)
|
||||||
(access_to_object_definition
|
(identifier)))
|
||||||
(subtype_indication
|
(full_type_declaration
|
||||||
(null_exclusion)
|
(identifier)
|
||||||
(identifier)))))))
|
(access_to_object_definition
|
||||||
(type_declaration
|
(general_access_modifier)
|
||||||
(full_type_declaration
|
(identifier)))
|
||||||
(identifier)
|
(full_type_declaration
|
||||||
(type_definition
|
(identifier)
|
||||||
(access_type_definition
|
(access_to_subprogram_definition
|
||||||
(access_to_object_definition
|
(result_profile
|
||||||
(general_access_modifier)
|
(identifier))))
|
||||||
(subtype_indication
|
(full_type_declaration
|
||||||
(identifier)))))))
|
(identifier)
|
||||||
(type_declaration
|
(access_to_subprogram_definition
|
||||||
(full_type_declaration
|
(result_profile
|
||||||
(identifier)
|
(identifier)))))))
|
||||||
(type_definition
|
|
||||||
(access_type_definition
|
|
||||||
(access_to_object_definition
|
|
||||||
(general_access_modifier)
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))))
|
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(type_definition
|
|
||||||
(access_type_definition
|
|
||||||
(access_to_subprogram_definition
|
|
||||||
(parameter_and_result_profile
|
|
||||||
(result_profile
|
|
||||||
(identifier))))))))
|
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(type_definition
|
|
||||||
(access_type_definition
|
|
||||||
(access_to_subprogram_definition
|
|
||||||
(parameter_and_result_profile
|
|
||||||
(result_profile
|
|
||||||
(identifier)))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Dereference
|
Dereference
|
||||||
|
|
@ -85,38 +61,24 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(identifier)
|
||||||
(identifier)
|
(identifier)))))
|
||||||
(assign_value
|
(statement
|
||||||
(expression
|
(procedure_call_statement
|
||||||
(relation
|
(identifier)
|
||||||
(simple_expression
|
(function_call
|
||||||
(term
|
(identifier)
|
||||||
(factor
|
(actual_parameter_part
|
||||||
(primary
|
(parameter_association
|
||||||
(identifier)
|
(expression
|
||||||
(identifier)))))))))))
|
(term
|
||||||
(statement
|
(numeric_literal))))))))))))
|
||||||
(simple_statement
|
|
||||||
(procedure_call_statement
|
|
||||||
(identifier)
|
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -14,118 +14,61 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(constrained_array_definition
|
||||||
(type_definition
|
(range_g
|
||||||
(array_type_definition
|
(term
|
||||||
(constrained_array_definition
|
(numeric_literal))
|
||||||
(discrete_subtype_definition
|
(term
|
||||||
(range_g
|
(numeric_literal)))
|
||||||
(simple_expression
|
(component_definition
|
||||||
|
(identifier))))
|
||||||
|
(object_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(named_array_aggregate
|
||||||
|
(array_component_association
|
||||||
|
(discrete_choice_list
|
||||||
|
(discrete_choice
|
||||||
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal)))))
|
||||||
(primary
|
(expression
|
||||||
(numeric_literal)))))
|
(term
|
||||||
(simple_expression
|
(identifier))))
|
||||||
|
(array_component_association
|
||||||
|
(discrete_choice_list
|
||||||
|
(discrete_choice
|
||||||
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal)))))
|
||||||
(primary
|
(expression
|
||||||
(numeric_literal)))))))
|
(term
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))
|
(identifier))))))))
|
||||||
(object_declaration
|
(object_declaration
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(identifier)
|
||||||
(subtype_indication
|
(expression
|
||||||
(identifier))
|
(term
|
||||||
(assign_value
|
(named_array_aggregate
|
||||||
(expression
|
(array_component_association
|
||||||
(relation
|
(discrete_choice_list
|
||||||
(simple_expression
|
(discrete_choice
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))))
|
||||||
(aggregate
|
(expression
|
||||||
(array_aggregate
|
(term
|
||||||
(named_array_aggregate
|
(identifier))))
|
||||||
(array_component_association
|
(array_component_association
|
||||||
(discrete_choice_list
|
(discrete_choice_list
|
||||||
(discrete_choice
|
(discrete_choice))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))
|
|
||||||
(array_component_association
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))))))
|
|
||||||
(object_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))
|
|
||||||
(assign_value
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(array_aggregate
|
|
||||||
(named_array_aggregate
|
|
||||||
(array_component_association
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))
|
|
||||||
(array_component_association
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -143,63 +86,31 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(constrained_array_definition
|
||||||
(type_definition
|
(range_g
|
||||||
(array_type_definition
|
(term
|
||||||
(constrained_array_definition
|
(numeric_literal))
|
||||||
(discrete_subtype_definition
|
(term
|
||||||
(range_g
|
(numeric_literal)))
|
||||||
(simple_expression
|
(component_definition
|
||||||
(term
|
(identifier))))
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))
|
|
||||||
(object_declaration
|
(object_declaration
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(identifier)
|
||||||
(subtype_indication
|
(expression
|
||||||
(identifier))
|
(term
|
||||||
(assign_value
|
(positional_array_aggregate
|
||||||
(expression
|
(expression
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal)))
|
||||||
(primary
|
(expression
|
||||||
(aggregate
|
(term
|
||||||
(array_aggregate
|
(numeric_literal)))
|
||||||
(positional_array_aggregate
|
(expression
|
||||||
(expression
|
(term
|
||||||
(relation
|
(numeric_literal))))))))))
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Indefinite
|
Indefinite
|
||||||
|
|
@ -216,53 +127,30 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(unconstrained_array_definition
|
||||||
(type_definition
|
(index_subtype_definition
|
||||||
(array_type_definition
|
(identifier))
|
||||||
(unconstrained_array_definition
|
(component_definition
|
||||||
(index_subtype_definition
|
(identifier))))
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))
|
|
||||||
(object_declaration
|
(object_declaration
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(identifier)
|
||||||
(subtype_indication
|
(expression
|
||||||
(identifier))
|
(term
|
||||||
(assign_value
|
(named_array_aggregate
|
||||||
(expression
|
(array_component_association
|
||||||
(relation
|
(discrete_choice_list
|
||||||
(simple_expression
|
(discrete_choice
|
||||||
(term
|
(range_g
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))
|
||||||
(aggregate
|
(term
|
||||||
(array_aggregate
|
(numeric_literal)))))
|
||||||
(named_array_aggregate
|
(expression
|
||||||
(array_component_association
|
(term
|
||||||
(discrete_choice_list
|
(identifier))))))))
|
||||||
(discrete_choice
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -280,78 +168,43 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(unconstrained_array_definition
|
||||||
(type_definition
|
(index_subtype_definition
|
||||||
(array_type_definition
|
(identifier))
|
||||||
(unconstrained_array_definition
|
(index_subtype_definition
|
||||||
(index_subtype_definition
|
(identifier))
|
||||||
(identifier))
|
(component_definition
|
||||||
(index_subtype_definition
|
(identifier))))
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))
|
|
||||||
(object_declaration
|
(object_declaration
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(identifier)
|
||||||
(subtype_indication
|
(expression
|
||||||
(identifier))
|
(term
|
||||||
(assign_value
|
(named_array_aggregate
|
||||||
(expression
|
(array_component_association
|
||||||
(relation
|
(discrete_choice_list
|
||||||
(simple_expression
|
(discrete_choice
|
||||||
(term
|
(range_g
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))
|
||||||
(aggregate
|
(term
|
||||||
(array_aggregate
|
(numeric_literal)))))
|
||||||
(named_array_aggregate
|
(expression
|
||||||
(array_component_association
|
(term
|
||||||
(discrete_choice_list
|
(named_array_aggregate
|
||||||
(discrete_choice
|
(array_component_association
|
||||||
(range_g
|
(discrete_choice_list
|
||||||
(simple_expression
|
(discrete_choice
|
||||||
(term
|
(range_g
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))
|
||||||
(numeric_literal)))))
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(identifier))))))))))))
|
||||||
(numeric_literal))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(array_aggregate
|
|
||||||
(named_array_aggregate
|
|
||||||
(array_component_association
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))))))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -367,57 +220,31 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(named_array_aggregate
|
||||||
(identifier)
|
(array_component_association
|
||||||
(assign_value
|
(iterated_element_association
|
||||||
(expression
|
(loop_parameter_specification
|
||||||
(relation
|
(identifier)
|
||||||
(simple_expression
|
(range_g
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal))
|
||||||
(primary
|
(term
|
||||||
(aggregate
|
(identifier))))
|
||||||
(array_aggregate
|
(expression
|
||||||
(named_array_aggregate
|
(term
|
||||||
(array_component_association
|
(function_call
|
||||||
(iterated_element_association
|
(identifier)
|
||||||
(loop_parameter_specification
|
(actual_parameter_part
|
||||||
(identifier)
|
(parameter_association
|
||||||
(discrete_subtype_definition
|
(expression
|
||||||
(range_g
|
(term
|
||||||
(simple_expression
|
(identifier)))))))))))))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))))))))))))))))))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -17,71 +17,47 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(non_empty_declarative_part
|
||||||
(identifier)))
|
(object_declaration
|
||||||
(non_empty_declarative_part
|
(identifier)
|
||||||
(declarative_item_pragma
|
(identifier)
|
||||||
(object_declaration
|
(index_constraint
|
||||||
(defining_identifier_list
|
(range_g
|
||||||
(identifier))
|
(identifier)
|
||||||
(subtype_indication
|
(tick)
|
||||||
|
(range_attribute_designator
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(numeric_literal))))))))
|
||||||
|
(handled_sequence_of_statements
|
||||||
|
(statement
|
||||||
|
(loop_statement
|
||||||
|
(iteration_scheme
|
||||||
|
(loop_parameter_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(constraint
|
(range_g
|
||||||
(index_constraint
|
(identifier)
|
||||||
(discrete_range
|
(tick)
|
||||||
(range_g
|
(range_attribute_designator))))
|
||||||
(identifier)
|
|
||||||
(tick)
|
|
||||||
(range_attribute_designator
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(null_statement))))
|
||||||
(loop_statement
|
(statement
|
||||||
(iteration_scheme
|
(loop_statement
|
||||||
(loop_parameter_specification
|
(iteration_scheme
|
||||||
(identifier)
|
(loop_parameter_specification
|
||||||
(discrete_subtype_definition
|
(identifier)
|
||||||
(range_g
|
(range_g
|
||||||
(identifier)
|
(identifier)
|
||||||
(tick)
|
(tick)
|
||||||
(range_attribute_designator)))))
|
(range_attribute_designator
|
||||||
(sequence_of_statements
|
(expression
|
||||||
(statement
|
(term
|
||||||
(simple_statement
|
(numeric_literal)))))))
|
||||||
(null_statement)))))))
|
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(null_statement))))))))
|
||||||
(loop_statement
|
|
||||||
(iteration_scheme
|
|
||||||
(loop_parameter_specification
|
|
||||||
(identifier)
|
|
||||||
(discrete_subtype_definition
|
|
||||||
(range_g
|
|
||||||
(identifier)
|
|
||||||
(tick)
|
|
||||||
(range_attribute_designator
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Reduction
|
Reduction
|
||||||
|
|
@ -99,83 +75,44 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(non_empty_declarative_part
|
||||||
(identifier)))
|
(object_declaration
|
||||||
(non_empty_declarative_part
|
(identifier)
|
||||||
(declarative_item_pragma
|
(identifier)
|
||||||
(object_declaration
|
(expression
|
||||||
(defining_identifier_list
|
(term
|
||||||
(identifier))
|
(value_sequence
|
||||||
(subtype_indication
|
(iterated_element_association
|
||||||
(identifier))
|
(iterator_specification
|
||||||
(assign_value
|
(identifier)
|
||||||
(expression
|
(identifier)
|
||||||
(relation
|
(iterator_filter
|
||||||
(simple_expression
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(identifier))
|
||||||
(primary
|
(relational_operator)
|
||||||
(attribute_reference
|
(term
|
||||||
(reduction_attribute_reference
|
(numeric_literal)))))
|
||||||
(value_sequence
|
(expression
|
||||||
(iterated_element_association
|
(term
|
||||||
(iterator_specification
|
(positional_array_aggregate
|
||||||
(identifier)
|
(expression
|
||||||
(identifier)
|
(term
|
||||||
(iterator_filter
|
(identifier)))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal))))))))
|
||||||
(term
|
(tick)
|
||||||
(factor
|
(reduction_attribute_designator
|
||||||
(primary
|
(identifier)
|
||||||
(identifier)))))
|
(reduction_specification
|
||||||
(relational_operator)
|
(string_literal)
|
||||||
(simple_expression
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal)))))))))
|
||||||
(primary
|
(handled_sequence_of_statements
|
||||||
(numeric_literal)))))))))
|
(statement
|
||||||
(expression
|
(null_statement))))))
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(array_aggregate
|
|
||||||
(positional_array_aggregate
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))
|
|
||||||
(tick)
|
|
||||||
(reduction_attribute_designator
|
|
||||||
(identifier)
|
|
||||||
(reduction_specification
|
|
||||||
(string_literal)
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -17,88 +17,56 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(generic_declaration
|
(generic_package_declaration
|
||||||
(generic_package_declaration
|
(generic_formal_part
|
||||||
(generic_formal_part
|
(formal_object_declaration
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_object_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(identifier)
|
|
||||||
(assign_value
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))
|
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_type_declaration
|
|
||||||
(formal_complete_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(discriminant_part
|
|
||||||
(unknown_discriminant_part))
|
|
||||||
(formal_type_definition
|
|
||||||
(formal_private_type_definition))
|
|
||||||
(identifier))))
|
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_type_declaration
|
|
||||||
(formal_incomplete_type_declaration
|
|
||||||
(identifier))))
|
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_package_declaration
|
|
||||||
(identifier)
|
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(parameter_association
|
|
||||||
(component_choice_list
|
|
||||||
(identifier)))))))
|
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_subprogram_declaration
|
|
||||||
(formal_concrete_subprogram_declaration
|
|
||||||
(subprogram_specification
|
|
||||||
(procedure_specification
|
|
||||||
(identifier)))
|
|
||||||
(subprogram_default))))
|
|
||||||
(generic_formal_parameter_declaration
|
|
||||||
(formal_subprogram_declaration
|
|
||||||
(formal_concrete_subprogram_declaration
|
|
||||||
(subprogram_specification
|
|
||||||
(function_specification
|
|
||||||
(identifier)
|
|
||||||
(parameter_and_result_profile
|
|
||||||
(result_profile
|
|
||||||
(identifier)))))
|
|
||||||
(subprogram_default)))))
|
|
||||||
(package_specification
|
|
||||||
(identifier)
|
(identifier)
|
||||||
(pragma_g
|
(identifier)
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(numeric_literal))))
|
||||||
|
(formal_complete_type_declaration
|
||||||
|
(identifier)
|
||||||
|
(unknown_discriminant_part)
|
||||||
|
(formal_private_type_definition)
|
||||||
|
(identifier))
|
||||||
|
(formal_incomplete_type_declaration
|
||||||
|
(identifier))
|
||||||
|
(formal_package_declaration
|
||||||
|
(identifier)
|
||||||
|
(function_call
|
||||||
(identifier)
|
(identifier)
|
||||||
(pragma_argument_association
|
(actual_parameter_part
|
||||||
(expression
|
(parameter_association
|
||||||
(relation
|
(component_choice_list
|
||||||
(simple_expression
|
(identifier))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))))
|
||||||
(identifier))))))))
|
(parameter_association
|
||||||
(pragma_argument_association
|
(component_choice_list
|
||||||
(expression
|
(identifier))))))
|
||||||
(relation
|
(formal_subprogram_declaration
|
||||||
(simple_expression
|
(formal_concrete_subprogram_declaration
|
||||||
(term
|
(procedure_specification
|
||||||
(factor
|
(identifier))
|
||||||
(primary
|
(subprogram_default)))
|
||||||
(string_literal))))))))))))))
|
(formal_subprogram_declaration
|
||||||
|
(formal_concrete_subprogram_declaration
|
||||||
|
(function_specification
|
||||||
|
(identifier)
|
||||||
|
(result_profile
|
||||||
|
(identifier)))
|
||||||
|
(subprogram_default))))
|
||||||
|
(package_specification
|
||||||
|
(identifier)
|
||||||
|
(pragma_g
|
||||||
|
(identifier)
|
||||||
|
(pragma_argument_association
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))))
|
||||||
|
(pragma_argument_association
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(string_literal)))))))))
|
||||||
|
|
|
||||||
|
|
@ -93,28 +93,21 @@ end Child.P2;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(package_body
|
||||||
(declarative_item_pragma
|
(identifier)
|
||||||
(proper_body
|
(handled_sequence_of_statements
|
||||||
(package_body
|
|
||||||
(identifier)
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(identifier)))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
(statement
|
||||||
(simple_statement
|
(null_statement)))
|
||||||
(null_statement)))))
|
(identifier)))
|
||||||
(identifier)
|
(handled_sequence_of_statements
|
||||||
(identifier)))))
|
(statement
|
||||||
|
(null_statement)))
|
||||||
|
(identifier)
|
||||||
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
separate
|
separate
|
||||||
|
|
@ -129,9 +122,8 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(subunit
|
(subunit
|
||||||
(identifier)
|
(identifier)
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)))))
|
||||||
(identifier))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
private types
|
private types
|
||||||
|
|
@ -149,30 +141,20 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(private_type_declaration
|
||||||
(private_type_declaration
|
(identifier))
|
||||||
(identifier)))
|
(private_extension_declaration
|
||||||
(type_declaration
|
(identifier)
|
||||||
(private_extension_declaration
|
(identifier))
|
||||||
(identifier)
|
(private_type_declaration
|
||||||
(subtype_indication
|
(identifier)
|
||||||
(identifier))))
|
(aspect_specification
|
||||||
(type_declaration
|
(aspect_mark_list
|
||||||
(private_type_declaration
|
(aspect_association
|
||||||
(identifier)
|
(identifier)
|
||||||
(aspect_specification
|
(expression
|
||||||
(aspect_mark_list
|
(term
|
||||||
(aspect_association
|
(numeric_literal))))))))))
|
||||||
(aspect_mark
|
|
||||||
(identifier))
|
|
||||||
(aspect_definition
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
incomplete types
|
incomplete types
|
||||||
|
|
@ -192,24 +174,17 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(incomplete_type_declaration
|
||||||
(incomplete_type_declaration
|
(identifier))
|
||||||
(identifier)))
|
(incomplete_type_declaration
|
||||||
(type_declaration
|
(identifier)
|
||||||
(incomplete_type_declaration
|
(known_discriminant_part
|
||||||
(identifier)
|
(discriminant_specification_list
|
||||||
(discriminant_part
|
(discriminant_specification
|
||||||
(known_discriminant_part
|
(identifier)
|
||||||
(discriminant_specification_list
|
(identifier)))))
|
||||||
(discriminant_specification
|
(incomplete_type_declaration
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(unknown_discriminant_part))
|
||||||
(identifier)))))))
|
(incomplete_type_declaration
|
||||||
(type_declaration
|
(identifier)))))
|
||||||
(incomplete_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(discriminant_part
|
|
||||||
(unknown_discriminant_part))))
|
|
||||||
(type_declaration
|
|
||||||
(incomplete_type_declaration
|
|
||||||
(identifier))))))
|
|
||||||
|
|
|
||||||
|
|
@ -30,137 +30,87 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(object_declaration
|
||||||
(declarative_item_pragma
|
(single_protected_declaration
|
||||||
(object_declaration
|
(identifier)
|
||||||
(single_protected_declaration
|
(protected_definition
|
||||||
|
(subprogram_declaration
|
||||||
|
(procedure_specification
|
||||||
|
(identifier)))
|
||||||
|
(subprogram_declaration
|
||||||
|
(function_specification
|
||||||
|
(identifier)
|
||||||
|
(result_profile
|
||||||
|
(identifier))))
|
||||||
|
(entry_declaration
|
||||||
|
(identifier))
|
||||||
|
(entry_declaration
|
||||||
(identifier)
|
(identifier)
|
||||||
(protected_definition
|
(identifier)
|
||||||
(protected_operation_declaration
|
(formal_part
|
||||||
(subprogram_declaration
|
(parameter_specification_list
|
||||||
(subprogram_specification
|
(parameter_specification
|
||||||
(procedure_specification
|
|
||||||
(identifier)))))
|
|
||||||
(protected_operation_declaration
|
|
||||||
(subprogram_declaration
|
|
||||||
(subprogram_specification
|
|
||||||
(function_specification
|
|
||||||
(identifier)
|
|
||||||
(parameter_and_result_profile
|
|
||||||
(result_profile
|
|
||||||
(identifier)))))))
|
|
||||||
(protected_operation_declaration
|
|
||||||
(entry_declaration
|
|
||||||
(identifier)))
|
|
||||||
(protected_operation_declaration
|
|
||||||
(entry_declaration
|
|
||||||
(identifier)
|
(identifier)
|
||||||
(discrete_subtype_definition
|
(identifier)))))
|
||||||
(subtype_indication
|
(component_declaration
|
||||||
(identifier)))
|
|
||||||
(formal_part
|
|
||||||
(parameter_specification_list
|
|
||||||
(parameter_specification
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(identifier))))))
|
|
||||||
(protected_element_declaration
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))
|
|
||||||
(identifier)))))
|
|
||||||
(declarative_item_pragma
|
|
||||||
(proper_body
|
|
||||||
(protected_body
|
|
||||||
(identifier)
|
(identifier)
|
||||||
(protected_operation_item
|
(component_definition
|
||||||
(subprogram_body
|
(identifier)))
|
||||||
(subprogram_specification
|
(identifier))))
|
||||||
(procedure_specification
|
(protected_body
|
||||||
(identifier)))
|
(identifier)
|
||||||
(handled_sequence_of_statements
|
(subprogram_body
|
||||||
(sequence_of_statements
|
(procedure_specification
|
||||||
(statement
|
(identifier))
|
||||||
(simple_statement
|
(handled_sequence_of_statements
|
||||||
(abort_statement
|
(statement
|
||||||
(identifier))))))))
|
(abort_statement
|
||||||
(protected_operation_item
|
(identifier)))))
|
||||||
(subprogram_body
|
(subprogram_body
|
||||||
(subprogram_specification
|
(function_specification
|
||||||
(function_specification
|
(identifier)
|
||||||
(identifier)
|
(result_profile
|
||||||
(parameter_and_result_profile
|
(identifier)))
|
||||||
(result_profile
|
(handled_sequence_of_statements
|
||||||
(identifier)))))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(simple_return_statement
|
||||||
(sequence_of_statements
|
(expression
|
||||||
(statement
|
(term
|
||||||
(simple_statement
|
(identifier)))))))
|
||||||
(simple_return_statement
|
(entry_body
|
||||||
(expression
|
(identifier)
|
||||||
(relation
|
(entry_barrier
|
||||||
(simple_expression
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(identifier))
|
||||||
(primary
|
(relational_operator)
|
||||||
(identifier))))))))))))))
|
(term
|
||||||
(protected_operation_item
|
(numeric_literal))))
|
||||||
(entry_body
|
(handled_sequence_of_statements
|
||||||
|
(statement
|
||||||
|
(requeue_statement
|
||||||
|
(identifier))))
|
||||||
|
(identifier))
|
||||||
|
(entry_body
|
||||||
|
(identifier)
|
||||||
|
(non_empty_entry_body_formal_part
|
||||||
|
(entry_index_specification
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(formal_part
|
||||||
|
(parameter_specification_list
|
||||||
|
(parameter_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(entry_barrier
|
(identifier)))))
|
||||||
(expression
|
(entry_barrier
|
||||||
(relation
|
(expression
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(identifier))))
|
||||||
(factor
|
(handled_sequence_of_statements
|
||||||
(primary
|
(statement
|
||||||
(identifier)))))
|
(null_statement)))
|
||||||
(relational_operator)
|
(identifier))
|
||||||
(simple_expression
|
(identifier))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(requeue_statement
|
|
||||||
(identifier))))))
|
|
||||||
(identifier)))
|
|
||||||
(protected_operation_item
|
|
||||||
(entry_body
|
|
||||||
(identifier)
|
|
||||||
(non_empty_entry_body_formal_part
|
|
||||||
(entry_index_specification
|
|
||||||
(identifier)
|
|
||||||
(discrete_subtype_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))
|
|
||||||
(formal_part
|
|
||||||
(parameter_specification_list
|
|
||||||
(parameter_specification
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(identifier)))))
|
|
||||||
(entry_barrier
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(identifier)))
|
|
||||||
(identifier)))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -12,12 +12,10 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(record_type_definition
|
||||||
(type_definition
|
(record_definition))))))
|
||||||
(record_type_definition
|
|
||||||
(record_definition))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
records
|
records
|
||||||
|
|
@ -41,72 +39,43 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
|
(record_type_definition
|
||||||
|
(record_definition
|
||||||
|
(component_list
|
||||||
|
(component_declaration
|
||||||
|
(identifier)
|
||||||
|
(component_definition
|
||||||
|
(identifier)))
|
||||||
|
(component_declaration
|
||||||
|
(identifier)
|
||||||
|
(component_definition
|
||||||
|
(identifier)
|
||||||
|
(range_constraint
|
||||||
|
(range_g
|
||||||
|
(term
|
||||||
|
(numeric_literal))
|
||||||
|
(term
|
||||||
|
(numeric_literal))))))
|
||||||
|
(component_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(component_definition
|
||||||
|
(access_definition
|
||||||
|
(null_exclusion)
|
||||||
|
(identifier))))))))
|
||||||
|
(record_representation_clause
|
||||||
|
(identifier)
|
||||||
|
(component_clause
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(expression
|
||||||
(record_type_definition
|
(term
|
||||||
(record_definition
|
(numeric_literal)))
|
||||||
(component_list
|
(term
|
||||||
(component_item
|
(numeric_literal))
|
||||||
(component_declaration
|
(term
|
||||||
(defining_identifier_list
|
(numeric_literal)))))))
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))
|
|
||||||
(component_item
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)
|
|
||||||
(constraint
|
|
||||||
(scalar_constraint
|
|
||||||
(range_constraint
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))
|
|
||||||
(component_item
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier)
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(access_definition
|
|
||||||
(null_exclusion)
|
|
||||||
(identifier)))))))))))
|
|
||||||
(aspect_clause
|
|
||||||
(record_representation_clause
|
|
||||||
(identifier)
|
|
||||||
(component_clause
|
|
||||||
(identifier)
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Multiple fields on one line
|
Multiple fields on one line
|
||||||
|
|
@ -124,21 +93,16 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(record_type_definition
|
||||||
(type_definition
|
(record_definition
|
||||||
(record_type_definition
|
(component_list
|
||||||
(record_definition
|
(component_declaration
|
||||||
(component_list
|
(identifier)
|
||||||
(component_item
|
(identifier)
|
||||||
(component_declaration
|
(component_definition
|
||||||
(defining_identifier_list
|
(identifier))))))))))
|
||||||
(identifier)
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Discriminated
|
Discriminated
|
||||||
|
|
@ -156,30 +120,23 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(known_discriminant_part
|
||||||
(known_discriminant_part
|
(discriminant_specification_list
|
||||||
(discriminant_specification_list
|
(discriminant_specification
|
||||||
(discriminant_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))
|
||||||
(identifier))
|
(discriminant_specification
|
||||||
(identifier))
|
(identifier)
|
||||||
(discriminant_specification
|
(identifier))))
|
||||||
(defining_identifier_list
|
(record_type_definition
|
||||||
(identifier))
|
(record_definition
|
||||||
(identifier))))
|
(component_list
|
||||||
(type_definition
|
(component_declaration
|
||||||
(record_type_definition
|
(identifier)
|
||||||
(record_definition
|
(component_definition
|
||||||
(component_list
|
(identifier))))))))))
|
||||||
(component_item
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
tagged
|
tagged
|
||||||
|
|
@ -198,29 +155,21 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
|
(record_type_definition
|
||||||
|
(record_definition)))
|
||||||
|
(full_type_declaration
|
||||||
|
(identifier)
|
||||||
|
(derived_type_definition
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(record_extension_part
|
||||||
(record_type_definition
|
(record_definition
|
||||||
(record_definition)))))
|
(component_list
|
||||||
(type_declaration
|
(component_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(component_definition
|
||||||
(type_definition
|
(identifier)))))))))))
|
||||||
(derived_type_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))
|
|
||||||
(record_extension_part
|
|
||||||
(record_definition
|
|
||||||
(component_list
|
|
||||||
(component_item
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Variant
|
Variant
|
||||||
|
|
@ -243,56 +192,40 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(known_discriminant_part
|
||||||
(known_discriminant_part
|
(discriminant_specification_list
|
||||||
(discriminant_specification_list
|
(discriminant_specification
|
||||||
(discriminant_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(record_type_definition
|
||||||
(identifier))))
|
(record_definition
|
||||||
(type_definition
|
(component_list
|
||||||
(record_type_definition
|
(variant_part
|
||||||
(record_definition
|
(identifier)
|
||||||
(component_list
|
(variant_list
|
||||||
(variant_part
|
(variant
|
||||||
(identifier)
|
(discrete_choice_list
|
||||||
(variant_list
|
(discrete_choice
|
||||||
(variant
|
(expression
|
||||||
(discrete_choice_list
|
(term
|
||||||
(discrete_choice
|
(numeric_literal))))
|
||||||
(expression
|
(discrete_choice
|
||||||
(relation
|
(range_g
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(numeric_literal))
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))))
|
||||||
(numeric_literal))))))))
|
(component_list
|
||||||
(discrete_choice
|
(component_declaration
|
||||||
(range_g
|
(identifier)
|
||||||
(simple_expression
|
(component_definition
|
||||||
(term
|
(identifier)))))
|
||||||
(factor
|
(variant
|
||||||
(primary
|
(discrete_choice_list
|
||||||
(numeric_literal)))))
|
(discrete_choice))
|
||||||
(simple_expression
|
(component_list)))))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(component_list
|
|
||||||
(component_item
|
|
||||||
(component_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(component_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))))
|
|
||||||
(variant
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice))
|
|
||||||
(component_list)))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
interface
|
interface
|
||||||
|
|
@ -310,27 +243,20 @@ end;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
|
(interface_type_definition))
|
||||||
|
(full_type_declaration
|
||||||
|
(identifier)
|
||||||
|
(interface_type_definition
|
||||||
|
(identifier)))
|
||||||
|
(full_type_declaration
|
||||||
|
(identifier)
|
||||||
|
(derived_type_definition
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
|
||||||
(interface_type_definition))))
|
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(record_extension_part
|
||||||
(interface_type_definition
|
(record_definition)))))))
|
||||||
(identifier)))))
|
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(type_definition
|
|
||||||
(derived_type_definition
|
|
||||||
(subtype_indication
|
|
||||||
(identifier))
|
|
||||||
(identifier)
|
|
||||||
(record_extension_part
|
|
||||||
(record_definition)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
record aggregates
|
record aggregates
|
||||||
|
|
@ -345,45 +271,27 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(record_aggregate
|
||||||
(identifier)
|
(record_component_association_list
|
||||||
(assign_value
|
(component_choice_list
|
||||||
|
(identifier))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))
|
||||||
(term
|
(component_choice_list
|
||||||
(factor
|
(identifier))
|
||||||
(primary
|
(expression
|
||||||
(aggregate
|
(term
|
||||||
(record_aggregate
|
(numeric_literal)))))))))))))
|
||||||
(record_component_association_list
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
record aggregate extension
|
record aggregate extension
|
||||||
|
|
@ -398,43 +306,25 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(extension_aggregate
|
||||||
(identifier)
|
(expression
|
||||||
(assign_value
|
(term
|
||||||
|
(identifier)))
|
||||||
|
(record_component_association_list
|
||||||
|
(component_choice_list
|
||||||
|
(identifier))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(extension_aggregate
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))
|
|
||||||
(record_component_association_list
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
record delta aggregate
|
record delta aggregate
|
||||||
|
|
@ -449,41 +339,22 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(record_delta_aggregate
|
||||||
(identifier)
|
(expression
|
||||||
(assign_value
|
(term
|
||||||
|
(identifier)))
|
||||||
|
(record_component_association_list
|
||||||
|
(component_choice_list
|
||||||
|
(identifier))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(delta_aggregate
|
|
||||||
(record_delta_aggregate
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))
|
|
||||||
(record_component_association_list
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))))))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -17,56 +17,37 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
|
(non_empty_declarative_part
|
||||||
|
(object_renaming_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(object_renaming_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(exception_renaming_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(package_renaming_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(subprogram_renaming_declaration
|
||||||
(procedure_specification
|
(procedure_specification
|
||||||
(identifier)))
|
(identifier)
|
||||||
(non_empty_declarative_part
|
(formal_part
|
||||||
(declarative_item_pragma
|
(parameter_specification_list
|
||||||
(renaming_declaration
|
(parameter_specification
|
||||||
(object_renaming_declaration
|
(identifier)
|
||||||
(identifier)
|
(identifier)))))
|
||||||
(identifier))))
|
(identifier))
|
||||||
(declarative_item_pragma
|
(generic_renaming_declaration
|
||||||
(renaming_declaration
|
(identifier)
|
||||||
(object_renaming_declaration
|
(identifier)))
|
||||||
(identifier)
|
(handled_sequence_of_statements
|
||||||
(identifier)
|
(statement
|
||||||
(identifier))))
|
(null_statement)))
|
||||||
(declarative_item_pragma
|
(identifier))))
|
||||||
(renaming_declaration
|
|
||||||
(exception_renaming_declaration
|
|
||||||
(identifier)
|
|
||||||
(identifier))))
|
|
||||||
(declarative_item_pragma
|
|
||||||
(renaming_declaration
|
|
||||||
(package_renaming_declaration
|
|
||||||
(identifier)
|
|
||||||
(identifier)
|
|
||||||
(identifier))))
|
|
||||||
(declarative_item_pragma
|
|
||||||
(renaming_declaration
|
|
||||||
(subprogram_renaming_declaration
|
|
||||||
(subprogram_specification
|
|
||||||
(procedure_specification
|
|
||||||
(identifier)
|
|
||||||
(non_empty_parameter_profile
|
|
||||||
(formal_part
|
|
||||||
(parameter_specification_list
|
|
||||||
(parameter_specification
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(identifier)))))))
|
|
||||||
(identifier))))
|
|
||||||
(declarative_item_pragma
|
|
||||||
(renaming_declaration
|
|
||||||
(generic_renaming_declaration
|
|
||||||
(identifier)
|
|
||||||
(identifier)))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
|
||||||
|
|
@ -11,37 +11,29 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(body_stub
|
||||||
(declarative_item_pragma
|
(subprogram_body_stub
|
||||||
(body_stub
|
(overriding_indicator)
|
||||||
(subprogram_body_stub
|
(procedure_specification
|
||||||
(overriding_indicator)
|
(identifier))
|
||||||
(subprogram_specification
|
(aspect_specification
|
||||||
(procedure_specification
|
(aspect_mark_list
|
||||||
(identifier)))
|
(aspect_association
|
||||||
(aspect_specification
|
(identifier))))))
|
||||||
(aspect_mark_list
|
(body_stub
|
||||||
(aspect_association
|
(subprogram_body_stub
|
||||||
(aspect_mark
|
(overriding_indicator)
|
||||||
(identifier))))))))
|
(function_specification
|
||||||
(declarative_item_pragma
|
(identifier)
|
||||||
(body_stub
|
(result_profile
|
||||||
(subprogram_body_stub
|
(identifier)))
|
||||||
(overriding_indicator)
|
(aspect_specification
|
||||||
(subprogram_specification
|
(aspect_mark_list
|
||||||
(function_specification
|
(aspect_association
|
||||||
(identifier)
|
(identifier))))))))))
|
||||||
(parameter_and_result_profile
|
|
||||||
(result_profile
|
|
||||||
(identifier)))))
|
|
||||||
(aspect_specification
|
|
||||||
(aspect_mark_list
|
|
||||||
(aspect_association
|
|
||||||
(aspect_mark
|
|
||||||
(identifier)))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Separate packages
|
Separate packages
|
||||||
|
|
@ -55,14 +47,12 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(body_stub
|
||||||
(declarative_item_pragma
|
(package_body_stub
|
||||||
(body_stub
|
(identifier)))))))
|
||||||
(package_body_stub
|
|
||||||
(identifier)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Separate protected
|
Separate protected
|
||||||
|
|
@ -76,15 +66,13 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(body_stub
|
||||||
(declarative_item_pragma
|
(protected_body_stub
|
||||||
(body_stub
|
(identifier))))
|
||||||
(protected_body_stub
|
(identifier))))
|
||||||
(identifier)))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Separate task
|
Separate task
|
||||||
|
|
@ -98,12 +86,10 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(body_stub
|
||||||
(declarative_item_pragma
|
(task_body_stub
|
||||||
(body_stub
|
(identifier))))
|
||||||
(task_body_stub
|
(identifier))))
|
||||||
(identifier)))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,25 @@
|
||||||
|
================================================================================
|
||||||
|
Factors
|
||||||
|
================================================================================
|
||||||
|
|
||||||
|
A : constant Integer := 2 + 8 * 3;
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
(compilation
|
||||||
|
(compilation_unit
|
||||||
|
(object_declaration
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(numeric_literal))
|
||||||
|
(binary_adding_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal)
|
||||||
|
(multiplying_operator)
|
||||||
|
(numeric_literal))))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
While
|
While
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -14,44 +36,26 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(loop_statement
|
||||||
(sequence_of_statements
|
(iteration_scheme
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))))
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(exit_statement))
|
||||||
(loop_statement
|
(statement
|
||||||
(iteration_scheme
|
(exit_statement
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier))
|
||||||
(term
|
(relational_operator)
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))))))))))
|
||||||
(identifier))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(exit_statement)))
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(exit_statement
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
For loops
|
For loops
|
||||||
|
|
@ -74,52 +78,37 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(loop_statement
|
||||||
(sequence_of_statements
|
(iteration_scheme
|
||||||
|
(iterator_specification
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(tick)
|
||||||
|
(attribute_designator
|
||||||
|
(identifier))))
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(goto_statement
|
||||||
(loop_statement
|
(identifier)))
|
||||||
(iteration_scheme
|
(label
|
||||||
(iterator_specification
|
(identifier))))
|
||||||
(identifier)
|
(statement
|
||||||
(identifier)
|
(loop_statement
|
||||||
(attribute_reference
|
(iteration_scheme
|
||||||
(identifier)
|
(iterator_specification
|
||||||
(tick)
|
(identifier)
|
||||||
(attribute_designator
|
(identifier)))
|
||||||
(identifier)))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(goto_statement
|
|
||||||
(identifier))))
|
|
||||||
(label
|
|
||||||
(identifier))))))
|
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(delay_relative_statement
|
||||||
(loop_statement
|
(expression
|
||||||
(iteration_scheme
|
(term
|
||||||
(iterator_specification
|
(numeric_literal))))))))
|
||||||
(identifier)
|
(identifier))))
|
||||||
(identifier)))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(delay_statement
|
|
||||||
(delay_relative_statement
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Named loop
|
Named loop
|
||||||
|
|
@ -137,24 +126,18 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(loop_statement
|
||||||
(sequence_of_statements
|
(loop_label
|
||||||
|
(identifier))
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(exit_statement
|
||||||
(loop_statement
|
(identifier)))
|
||||||
(loop_label
|
(identifier)))))))
|
||||||
(identifier))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(exit_statement
|
|
||||||
(identifier)))))
|
|
||||||
(identifier))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Return
|
Return
|
||||||
|
|
@ -172,59 +155,35 @@ end F;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(function_specification
|
||||||
(subprogram_specification
|
(identifier)
|
||||||
(function_specification
|
(result_profile
|
||||||
(identifier)
|
(identifier)))
|
||||||
(parameter_and_result_profile
|
(handled_sequence_of_statements
|
||||||
(result_profile
|
(statement
|
||||||
|
(simple_return_statement
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
(identifier)))))
|
(identifier)))))
|
||||||
(handled_sequence_of_statements
|
(statement
|
||||||
(sequence_of_statements
|
(extended_return_statement
|
||||||
(statement
|
(extended_return_object_declaration
|
||||||
(simple_statement
|
(identifier)
|
||||||
(simple_return_statement
|
(identifier)
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(record_aggregate
|
||||||
(term
|
(record_component_association_list
|
||||||
(factor
|
(component_choice_list
|
||||||
(primary
|
(identifier))
|
||||||
(identifier))))))))))
|
|
||||||
(statement
|
|
||||||
(compound_statement
|
|
||||||
(extended_return_statement
|
|
||||||
(extended_return_object_declaration
|
|
||||||
(identifier)
|
|
||||||
(return_subtype_indication
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))
|
|
||||||
(assign_value
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal))))))))
|
||||||
(term
|
(handled_sequence_of_statements
|
||||||
(factor
|
(statement
|
||||||
(primary
|
(null_statement))))))
|
||||||
(aggregate
|
(identifier))))
|
||||||
(record_aggregate
|
|
||||||
(record_component_association_list
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))))))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Procedure call
|
Procedure call
|
||||||
|
|
@ -239,42 +198,28 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier)
|
||||||
(procedure_specification
|
(formal_part
|
||||||
|
(parameter_specification_list
|
||||||
|
(parameter_specification
|
||||||
|
(identifier)
|
||||||
|
(identifier)))))
|
||||||
|
(handled_sequence_of_statements
|
||||||
|
(statement
|
||||||
|
(procedure_call_statement
|
||||||
(identifier)
|
(identifier)
|
||||||
(non_empty_parameter_profile
|
(actual_parameter_part
|
||||||
(formal_part
|
(parameter_association
|
||||||
(parameter_specification_list
|
(expression
|
||||||
(parameter_specification
|
(term
|
||||||
(defining_identifier_list
|
(numeric_literal))))
|
||||||
(identifier))
|
(parameter_association
|
||||||
(identifier)))))))
|
(expression
|
||||||
(handled_sequence_of_statements
|
(term
|
||||||
(sequence_of_statements
|
(identifier))))))))
|
||||||
(statement
|
(identifier))))
|
||||||
(simple_statement
|
|
||||||
(procedure_call_statement
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Raise exception
|
Raise exception
|
||||||
|
|
@ -290,28 +235,19 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
|
(statement
|
||||||
|
(raise_statement
|
||||||
(identifier)))
|
(identifier)))
|
||||||
(handled_sequence_of_statements
|
(statement
|
||||||
(sequence_of_statements
|
(raise_statement
|
||||||
(statement
|
(identifier)
|
||||||
(simple_statement
|
(expression
|
||||||
(raise_statement
|
(term
|
||||||
(identifier))))
|
(string_literal)))))))))
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(raise_statement
|
|
||||||
(identifier)
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(string_literal))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Function calls
|
Function calls
|
||||||
|
|
@ -327,44 +263,28 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(non_empty_declarative_part
|
||||||
(identifier)))
|
(object_declaration
|
||||||
(non_empty_declarative_part
|
(identifier)
|
||||||
(declarative_item_pragma
|
(identifier)))
|
||||||
(object_declaration
|
(handled_sequence_of_statements
|
||||||
(defining_identifier_list
|
(statement
|
||||||
(identifier))
|
(assignment_statement
|
||||||
(subtype_indication
|
(identifier)
|
||||||
(identifier)))))
|
(expression
|
||||||
(handled_sequence_of_statements
|
(term
|
||||||
(sequence_of_statements
|
(function_call
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(assignment_statement
|
|
||||||
(identifier)
|
(identifier)
|
||||||
(assign_value
|
(actual_parameter_part
|
||||||
(expression
|
(parameter_association
|
||||||
(relation
|
(component_choice_list
|
||||||
(simple_expression
|
(identifier))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))))))))))))))
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
if statement
|
if statement
|
||||||
|
|
@ -396,99 +316,56 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(if_statement
|
||||||
(sequence_of_statements
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))
|
||||||
|
(relational_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal))
|
||||||
|
(term
|
||||||
|
(identifier))
|
||||||
|
(relational_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal)))
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(block_statement
|
||||||
(if_statement
|
(handled_sequence_of_statements
|
||||||
(expression
|
(statement
|
||||||
(relation
|
(null_statement)))))
|
||||||
(simple_expression
|
(elsif_statement_item
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(identifier))
|
||||||
(identifier)))))
|
(relational_operator)
|
||||||
(relational_operator)
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))
|
||||||
(term
|
(statement
|
||||||
(factor
|
(block_statement
|
||||||
(primary
|
(non_empty_declarative_part
|
||||||
(numeric_literal))))))
|
(object_declaration
|
||||||
(relation
|
(identifier)
|
||||||
(simple_expression
|
(identifier)))
|
||||||
(term
|
(handled_sequence_of_statements
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(null_statement))
|
||||||
(block_statement
|
(exception_handler
|
||||||
(handled_sequence_of_statements
|
(exception_choice_list
|
||||||
(sequence_of_statements
|
(exception_choice
|
||||||
(statement
|
(identifier)))
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))))))
|
|
||||||
(elsif_statement_item
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(null_statement)))))))
|
||||||
(block_statement
|
(statement
|
||||||
(non_empty_declarative_part
|
(block_statement
|
||||||
(declarative_item_pragma
|
(handled_sequence_of_statements
|
||||||
(object_declaration
|
(statement
|
||||||
(defining_identifier_list
|
(null_statement))))))))
|
||||||
(identifier))
|
(identifier))))
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))
|
|
||||||
(exception_handler_list
|
|
||||||
(exception_handler
|
|
||||||
(exception_choice_list
|
|
||||||
(exception_choice
|
|
||||||
(identifier)))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(compound_statement
|
|
||||||
(block_statement
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))))))))))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Case statement
|
Case statement
|
||||||
|
|
@ -508,75 +385,45 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(case_statement
|
||||||
(sequence_of_statements
|
(expression
|
||||||
(statement
|
(term
|
||||||
(compound_statement
|
(function_call
|
||||||
(case_statement
|
(identifier)
|
||||||
(expression
|
(actual_parameter_part
|
||||||
(relation
|
(parameter_association
|
||||||
(simple_expression
|
(component_choice_list
|
||||||
|
(identifier))
|
||||||
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(numeric_literal))))))))
|
||||||
(primary
|
(case_statement_alternative
|
||||||
(function_call
|
(discrete_choice_list
|
||||||
(identifier)
|
(discrete_choice
|
||||||
(actual_parameter_part
|
(range_g
|
||||||
(parameter_association
|
(term
|
||||||
(component_choice_list
|
(character_literal))
|
||||||
(identifier))
|
(term
|
||||||
(expression
|
(character_literal)))))
|
||||||
(relation
|
(statement
|
||||||
(simple_expression
|
(null_statement)))
|
||||||
(term
|
(case_statement_alternative
|
||||||
(factor
|
(discrete_choice_list
|
||||||
(primary
|
(discrete_choice
|
||||||
(numeric_literal))))))))))))))))
|
(expression
|
||||||
(case_statement_alternative
|
(term
|
||||||
(discrete_choice_list
|
(character_literal))))
|
||||||
(discrete_choice
|
(discrete_choice
|
||||||
(range_g
|
(expression
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(character_literal)))))
|
||||||
(factor
|
(statement
|
||||||
(primary
|
(null_statement)))))))))
|
||||||
(character_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(character_literal))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(case_statement_alternative
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(character_literal))))))))
|
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(character_literal)))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Allocators
|
Allocators
|
||||||
|
|
@ -592,64 +439,38 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(expression
|
||||||
(simple_statement
|
(term
|
||||||
(assignment_statement
|
(allocator
|
||||||
(identifier)
|
(identifier))))))
|
||||||
(assign_value
|
(statement
|
||||||
|
(assignment_statement
|
||||||
|
(identifier)
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(allocator
|
||||||
|
(subpool_specification
|
||||||
|
(identifier)
|
||||||
|
(identifier))
|
||||||
|
(qualified_expression
|
||||||
|
(identifier)
|
||||||
|
(tick)
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(record_aggregate
|
||||||
(term
|
(record_component_association_list
|
||||||
(factor
|
(component_choice_list
|
||||||
(primary
|
(identifier))
|
||||||
(allocator
|
(expression
|
||||||
(subtype_indication_paren_constraint
|
(term
|
||||||
(identifier)))))))))))))
|
(numeric_literal)))))))))))))))))
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(assignment_statement
|
|
||||||
(identifier)
|
|
||||||
(assign_value
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(allocator
|
|
||||||
(subpool_specification
|
|
||||||
(identifier)
|
|
||||||
(identifier))
|
|
||||||
(subtype_indication_paren_constraint
|
|
||||||
(qualified_expression
|
|
||||||
(identifier)
|
|
||||||
(tick)
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(aggregate
|
|
||||||
(record_aggregate
|
|
||||||
(record_component_association_list
|
|
||||||
(component_choice_list
|
|
||||||
(identifier))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))))))))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Filtered for loops
|
Filtered for loops
|
||||||
|
|
@ -666,38 +487,25 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(loop_statement
|
||||||
(sequence_of_statements
|
(iteration_scheme
|
||||||
|
(iterator_specification
|
||||||
|
(identifier)
|
||||||
|
(identifier)
|
||||||
|
(iterator_filter
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))
|
||||||
|
(relational_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal))))))
|
||||||
(statement
|
(statement
|
||||||
(compound_statement
|
(null_statement))))))))
|
||||||
(loop_statement
|
|
||||||
(iteration_scheme
|
|
||||||
(iterator_specification
|
|
||||||
(identifier)
|
|
||||||
(identifier)
|
|
||||||
(iterator_filter
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Assignment target name
|
Assignment target name
|
||||||
|
|
@ -713,71 +521,42 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(procedure_specification
|
||||||
(subprogram_specification
|
(identifier))
|
||||||
(procedure_specification
|
(handled_sequence_of_statements
|
||||||
(identifier)))
|
(statement
|
||||||
(handled_sequence_of_statements
|
(assignment_statement
|
||||||
(sequence_of_statements
|
(identifier)
|
||||||
(statement
|
(function_call
|
||||||
(simple_statement
|
(identifier)
|
||||||
(assignment_statement
|
(actual_parameter_part
|
||||||
|
(parameter_association
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))))))
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(target_name))
|
||||||
|
(binary_adding_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal)))))
|
||||||
|
(statement
|
||||||
|
(assignment_statement
|
||||||
|
(identifier)
|
||||||
|
(function_call
|
||||||
|
(identifier)
|
||||||
|
(actual_parameter_part
|
||||||
|
(parameter_association
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(identifier))))))
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
|
(function_call
|
||||||
(identifier)
|
(identifier)
|
||||||
(function_call
|
(actual_parameter_part
|
||||||
(identifier)
|
(parameter_association
|
||||||
(actual_parameter_part
|
(expression
|
||||||
(parameter_association
|
(term
|
||||||
(expression
|
(target_name))))))))))))))
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))
|
|
||||||
(assign_value
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(target_name))))
|
|
||||||
(binary_adding_operator)
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(assignment_statement
|
|
||||||
(identifier)
|
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))
|
|
||||||
(assign_value
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(function_call
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(target_name))))))))))))))))))))))))))
|
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,7 @@ end;
|
||||||
(aspect_specification
|
(aspect_specification
|
||||||
(aspect_mark_list
|
(aspect_mark_list
|
||||||
(aspect_association
|
(aspect_association
|
||||||
(aspect_mark
|
(identifier))))))))
|
||||||
(identifier)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
procedures
|
procedures
|
||||||
|
|
@ -46,26 +45,21 @@ end;
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(subprogram_declaration
|
(subprogram_declaration
|
||||||
(subprogram_specification
|
(procedure_specification
|
||||||
(procedure_specification
|
(identifier)
|
||||||
(identifier)
|
(formal_part
|
||||||
(non_empty_parameter_profile
|
(parameter_specification_list
|
||||||
(formal_part
|
(parameter_specification
|
||||||
(parameter_specification_list
|
(identifier)
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))
|
||||||
(identifier)
|
(parameter_specification
|
||||||
(identifier))
|
(identifier)
|
||||||
(identifier))
|
(identifier)))))
|
||||||
(parameter_specification
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(identifier)))))))
|
|
||||||
(aspect_specification
|
(aspect_specification
|
||||||
(aspect_mark_list
|
(aspect_mark_list
|
||||||
(aspect_association
|
(aspect_association
|
||||||
(aspect_mark
|
(identifier))))))))
|
||||||
(identifier)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
abstract procedures
|
abstract procedures
|
||||||
|
|
@ -83,19 +77,16 @@ end;
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(subprogram_declaration
|
(subprogram_declaration
|
||||||
(subprogram_specification
|
(procedure_specification
|
||||||
(procedure_specification
|
(identifier)))
|
||||||
(identifier))))
|
|
||||||
(subprogram_declaration
|
(subprogram_declaration
|
||||||
(overriding_indicator)
|
(overriding_indicator)
|
||||||
(subprogram_specification
|
(procedure_specification
|
||||||
(procedure_specification
|
(identifier))
|
||||||
(identifier)))
|
|
||||||
(aspect_specification
|
(aspect_specification
|
||||||
(aspect_mark_list
|
(aspect_mark_list
|
||||||
(aspect_association
|
(aspect_association
|
||||||
(aspect_mark
|
(identifier))))))))
|
||||||
(identifier)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
functions
|
functions
|
||||||
|
|
@ -113,37 +104,27 @@ end;
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(subprogram_declaration
|
(subprogram_declaration
|
||||||
(subprogram_specification
|
(function_specification
|
||||||
(function_specification
|
(identifier)
|
||||||
(identifier)
|
(formal_part
|
||||||
(parameter_and_result_profile
|
(parameter_specification_list
|
||||||
(formal_part
|
(parameter_specification
|
||||||
(parameter_specification_list
|
(identifier)
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier)
|
(result_profile
|
||||||
(identifier))
|
(access_definition
|
||||||
(identifier))))
|
(null_exclusion)
|
||||||
(result_profile
|
(identifier))))
|
||||||
(access_definition
|
|
||||||
(null_exclusion)
|
|
||||||
(identifier))))))
|
|
||||||
(aspect_specification
|
(aspect_specification
|
||||||
(aspect_mark_list
|
(aspect_mark_list
|
||||||
(aspect_association
|
(aspect_association
|
||||||
(aspect_mark
|
(identifier))
|
||||||
(identifier)))
|
|
||||||
(aspect_association
|
(aspect_association
|
||||||
(aspect_mark
|
(identifier)
|
||||||
(identifier))
|
(expression
|
||||||
(aspect_definition
|
(term
|
||||||
(expression
|
(identifier))))))))))
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
subprogram body
|
subprogram body
|
||||||
|
|
@ -161,36 +142,25 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(subprogram_body
|
||||||
(declarative_item_pragma
|
(procedure_specification
|
||||||
(proper_body
|
(identifier)
|
||||||
(subprogram_body
|
(formal_part
|
||||||
(subprogram_specification
|
(parameter_specification_list
|
||||||
(procedure_specification
|
(parameter_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(non_empty_parameter_profile
|
(identifier)))))
|
||||||
(formal_part
|
(non_empty_declarative_part
|
||||||
(parameter_specification_list
|
(object_declaration
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier)))
|
||||||
(identifier))
|
(handled_sequence_of_statements
|
||||||
(identifier)))))))
|
(statement
|
||||||
(non_empty_declarative_part
|
(null_statement)))
|
||||||
(declarative_item_pragma
|
(identifier))))))
|
||||||
(object_declaration
|
|
||||||
(defining_identifier_list
|
|
||||||
(identifier))
|
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))
|
|
||||||
(handled_sequence_of_statements
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(identifier)))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function membership
|
Expression function membership
|
||||||
|
|
@ -206,29 +176,20 @@ function F2 (A : Integer) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
|
||||||
(identifier))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(relation_membership
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(identifier))
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(membership_choice_list
|
(membership_choice_list
|
||||||
(membership_choice
|
(term
|
||||||
(simple_expression
|
(identifier))))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function declare
|
Expression function declare
|
||||||
|
|
@ -244,42 +205,26 @@ function F2 (A : Integer) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
|
||||||
(identifier))))
|
|
||||||
(declare_expression
|
(declare_expression
|
||||||
(declare_item
|
(object_declaration
|
||||||
(object_declaration
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
|
(expression
|
||||||
|
(term
|
||||||
(identifier))
|
(identifier))
|
||||||
(subtype_indication
|
(binary_adding_operator)
|
||||||
(identifier))
|
(term
|
||||||
(assign_value
|
(numeric_literal))))
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))
|
|
||||||
(binary_adding_operator)
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier)))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function raise
|
Expression function raise
|
||||||
|
|
@ -295,13 +240,11 @@ function F3 return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(result_profile
|
||||||
(result_profile
|
(identifier)))
|
||||||
(identifier))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(raise_expression
|
||||||
(raise_expression
|
(identifier))))))
|
||||||
(identifier)))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function simple
|
Expression function simple
|
||||||
|
|
@ -316,16 +259,11 @@ function F4 return Boolean is (True);
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(result_profile
|
||||||
(result_profile
|
(identifier)))
|
||||||
(identifier))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier))))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function if
|
Expression function if
|
||||||
|
|
@ -341,56 +279,31 @@ function F (A : Integer) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
(if_expression
|
||||||
(identifier))))
|
(expression
|
||||||
(conditional_expression
|
(term
|
||||||
(if_expression
|
(identifier))
|
||||||
(expression
|
(relational_operator)
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(numeric_literal))
|
||||||
(term
|
(term
|
||||||
(factor
|
(identifier))
|
||||||
(primary
|
(relational_operator)
|
||||||
(identifier)))))
|
(term
|
||||||
(relational_operator)
|
(numeric_literal)))
|
||||||
(simple_expression
|
(expression
|
||||||
(term
|
(term
|
||||||
(factor
|
(identifier)))
|
||||||
(primary
|
(expression
|
||||||
(numeric_literal))))))
|
(term
|
||||||
(relation
|
(identifier)))))))
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function if extra parenthesis
|
Expression function if extra parenthesis
|
||||||
|
|
@ -406,50 +319,28 @@ function F5 (A : Integer) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
|
||||||
(identifier))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(if_expression
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(identifier))
|
||||||
(conditional_expression
|
(relational_operator)
|
||||||
(if_expression
|
(term
|
||||||
(expression
|
(numeric_literal)))
|
||||||
(relation
|
(expression
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(identifier)))
|
||||||
(factor
|
(expression
|
||||||
(primary
|
(term
|
||||||
(identifier)))))
|
(identifier)))))))))
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function case
|
Expression function case
|
||||||
|
|
@ -467,72 +358,43 @@ function F (A : Integer) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
(case_expression
|
||||||
(identifier))))
|
(expression
|
||||||
(conditional_expression
|
(term
|
||||||
(case_expression
|
(identifier))
|
||||||
|
(binary_adding_operator)
|
||||||
|
(term
|
||||||
|
(numeric_literal)))
|
||||||
|
(case_expression_alternative
|
||||||
|
(discrete_choice_list
|
||||||
|
(discrete_choice
|
||||||
|
(range_g
|
||||||
|
(term
|
||||||
|
(numeric_literal))
|
||||||
|
(term
|
||||||
|
(numeric_literal))))
|
||||||
|
(discrete_choice
|
||||||
|
(range_g
|
||||||
|
(term
|
||||||
|
(numeric_literal))
|
||||||
|
(term
|
||||||
|
(numeric_literal)))))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier))))
|
||||||
(term
|
(case_expression_alternative
|
||||||
(factor
|
(discrete_choice_list
|
||||||
(primary
|
(discrete_choice))
|
||||||
(identifier))))
|
(expression
|
||||||
(binary_adding_operator)
|
(term
|
||||||
(term
|
(identifier))))))))
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(case_expression_alternative
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(discrete_choice
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))
|
|
||||||
(case_expression_alternative
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function array
|
Expression function array
|
||||||
|
|
@ -547,33 +409,20 @@ function F return My_Array is (1 .. 2 => True);
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(result_profile
|
||||||
(result_profile
|
(identifier)))
|
||||||
(identifier))))
|
(named_array_aggregate
|
||||||
(aggregate
|
(array_component_association
|
||||||
(array_aggregate
|
(discrete_choice_list
|
||||||
(named_array_aggregate
|
(discrete_choice
|
||||||
(array_component_association
|
(range_g
|
||||||
(discrete_choice_list
|
(term
|
||||||
(discrete_choice
|
(numeric_literal))
|
||||||
(range_g
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(identifier))))))))
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Expression function quantified
|
Expression function quantified
|
||||||
|
|
@ -590,33 +439,24 @@ function F (A : My_Array) return Boolean
|
||||||
(expression_function_declaration
|
(expression_function_declaration
|
||||||
(function_specification
|
(function_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(parameter_and_result_profile
|
(formal_part
|
||||||
(formal_part
|
(parameter_specification_list
|
||||||
(parameter_specification_list
|
(parameter_specification
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(result_profile
|
||||||
(identifier))))
|
(identifier)))
|
||||||
(result_profile
|
|
||||||
(identifier))))
|
|
||||||
(quantified_expression
|
(quantified_expression
|
||||||
(quantifier)
|
(quantifier)
|
||||||
(iterator_specification
|
(iterator_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(identifier))
|
(identifier))
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier))
|
||||||
(term
|
(relational_operator)
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))))))
|
||||||
(identifier)))))
|
|
||||||
(relational_operator)
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Operators
|
Operators
|
||||||
|
|
@ -631,32 +471,22 @@ end "<";
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(subprogram_body
|
||||||
(subprogram_body
|
(overriding_indicator)
|
||||||
(overriding_indicator)
|
(function_specification
|
||||||
(subprogram_specification
|
(string_literal)
|
||||||
(function_specification
|
(formal_part
|
||||||
(string_literal)
|
(parameter_specification_list
|
||||||
(parameter_and_result_profile
|
(parameter_specification
|
||||||
(formal_part
|
(identifier)
|
||||||
(parameter_specification_list
|
(identifier)
|
||||||
(parameter_specification
|
(identifier))))
|
||||||
(defining_identifier_list
|
(result_profile
|
||||||
(identifier)
|
(identifier)))
|
||||||
(identifier))
|
(handled_sequence_of_statements
|
||||||
(identifier))))
|
(statement
|
||||||
(result_profile
|
(simple_return_statement
|
||||||
(identifier)))))
|
(expression
|
||||||
(handled_sequence_of_statements
|
(term
|
||||||
(sequence_of_statements
|
(identifier))))))
|
||||||
(statement
|
(string_literal))))
|
||||||
(simple_statement
|
|
||||||
(simple_return_statement
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier))))))))))))
|
|
||||||
(string_literal)))))
|
|
||||||
|
|
|
||||||
|
|
@ -34,105 +34,71 @@ end P;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(object_declaration
|
||||||
(declarative_item_pragma
|
(single_task_declaration
|
||||||
(object_declaration
|
(identifier)
|
||||||
(single_task_declaration
|
(task_definition
|
||||||
|
(entry_declaration
|
||||||
(identifier)
|
(identifier)
|
||||||
(task_definition
|
(formal_part
|
||||||
(task_item
|
(parameter_specification_list
|
||||||
(entry_declaration
|
(parameter_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(formal_part
|
(identifier)))))
|
||||||
(parameter_specification_list
|
(entry_declaration
|
||||||
(parameter_specification
|
(identifier))
|
||||||
(defining_identifier_list
|
(identifier))))
|
||||||
(identifier))
|
(task_body
|
||||||
(identifier))))))
|
(identifier)
|
||||||
(task_item
|
(non_empty_declarative_part
|
||||||
(entry_declaration
|
(object_declaration
|
||||||
(identifier)))
|
(identifier)
|
||||||
(identifier)))))
|
(identifier)))
|
||||||
(declarative_item_pragma
|
(handled_sequence_of_statements
|
||||||
(proper_body
|
(statement
|
||||||
(task_body
|
(accept_statement
|
||||||
(identifier)
|
(identifier)
|
||||||
(non_empty_declarative_part
|
(formal_part
|
||||||
(declarative_item_pragma
|
(parameter_specification_list
|
||||||
(object_declaration
|
(parameter_specification
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(identifier))))
|
||||||
(subtype_indication
|
|
||||||
(identifier)))))
|
|
||||||
(handled_sequence_of_statements
|
(handled_sequence_of_statements
|
||||||
(sequence_of_statements
|
(statement
|
||||||
(statement
|
(null_statement)))
|
||||||
(compound_statement
|
(identifier)))
|
||||||
(accept_statement
|
(statement
|
||||||
(identifier)
|
(timed_entry_call
|
||||||
(formal_part
|
(entry_call_alternative
|
||||||
(parameter_specification_list
|
(procedure_call_statement
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(actual_parameter_part
|
||||||
(identifier))
|
(parameter_association
|
||||||
(identifier))))
|
(expression
|
||||||
(handled_sequence_of_statements
|
(term
|
||||||
(sequence_of_statements
|
(numeric_literal)))))))
|
||||||
(statement
|
(delay_alternative
|
||||||
(simple_statement
|
(delay_relative_statement
|
||||||
(null_statement)))))
|
(expression
|
||||||
(identifier))))
|
(term
|
||||||
(statement
|
(numeric_literal)))))))
|
||||||
(compound_statement
|
(statement
|
||||||
(select_statement
|
(conditional_entry_call
|
||||||
(timed_entry_call
|
(entry_call_alternative
|
||||||
(entry_call_alternative
|
(procedure_call_statement
|
||||||
(procedure_call_statement
|
(identifier)
|
||||||
(identifier)
|
(actual_parameter_part
|
||||||
(actual_parameter_part
|
(parameter_association
|
||||||
(parameter_association
|
(expression
|
||||||
(expression
|
(term
|
||||||
(relation
|
(numeric_literal)))))))
|
||||||
(simple_expression
|
(statement
|
||||||
(term
|
(null_statement)))))
|
||||||
(factor
|
(identifier)))
|
||||||
(primary
|
(identifier))))
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(delay_alternative
|
|
||||||
(delay_statement
|
|
||||||
(delay_relative_statement
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))))
|
|
||||||
(statement
|
|
||||||
(compound_statement
|
|
||||||
(select_statement
|
|
||||||
(conditional_entry_call
|
|
||||||
(entry_call_alternative
|
|
||||||
(procedure_call_statement
|
|
||||||
(identifier)
|
|
||||||
(actual_parameter_part
|
|
||||||
(parameter_association
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement))))))))))
|
|
||||||
(identifier)))))
|
|
||||||
(identifier)))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Task types
|
Task types
|
||||||
|
|
@ -152,42 +118,32 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(full_type_declaration
|
||||||
(declarative_item_pragma
|
(task_type_declaration
|
||||||
(type_declaration
|
(identifier)))
|
||||||
(full_type_declaration
|
(full_type_declaration
|
||||||
(task_type_declaration
|
(task_type_declaration
|
||||||
(identifier)))))
|
(identifier)
|
||||||
(declarative_item_pragma
|
(task_definition
|
||||||
(type_declaration
|
(entry_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(task_type_declaration
|
(formal_part
|
||||||
(identifier)
|
(parameter_specification_list
|
||||||
(task_definition
|
(parameter_specification
|
||||||
(task_item
|
(identifier)
|
||||||
(entry_declaration
|
(identifier)))))
|
||||||
(identifier)
|
(identifier))))
|
||||||
(formal_part
|
(full_type_declaration
|
||||||
(parameter_specification_list
|
(task_type_declaration
|
||||||
(parameter_specification
|
(identifier)
|
||||||
(defining_identifier_list
|
(identifier)
|
||||||
(identifier))
|
(task_definition
|
||||||
(identifier))))))
|
(entry_declaration
|
||||||
(identifier))))))
|
(identifier))
|
||||||
(declarative_item_pragma
|
(identifier))))))))
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(task_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(identifier)
|
|
||||||
(task_definition
|
|
||||||
(task_item
|
|
||||||
(entry_declaration
|
|
||||||
(identifier)))
|
|
||||||
(identifier)))))))))))
|
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
asynchronous select
|
asynchronous select
|
||||||
|
|
@ -212,53 +168,36 @@ end;
|
||||||
|
|
||||||
(compilation
|
(compilation
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(proper_body
|
(package_body
|
||||||
(package_body
|
(identifier)
|
||||||
(identifier)
|
(non_empty_declarative_part
|
||||||
(non_empty_declarative_part
|
(task_body
|
||||||
(declarative_item_pragma
|
(identifier)
|
||||||
(proper_body
|
(handled_sequence_of_statements
|
||||||
(task_body
|
(statement
|
||||||
(identifier)
|
(asynchronous_select
|
||||||
(handled_sequence_of_statements
|
(triggering_alternative
|
||||||
(sequence_of_statements
|
(procedure_call_statement
|
||||||
(statement
|
(function_call
|
||||||
(compound_statement
|
(identifier)
|
||||||
(select_statement
|
(actual_parameter_part
|
||||||
(asynchronous_select
|
(parameter_association
|
||||||
(triggering_alternative
|
(expression
|
||||||
(procedure_call_statement
|
(term
|
||||||
(function_call
|
(numeric_literal)))))))
|
||||||
(identifier)
|
(statement
|
||||||
(actual_parameter_part
|
(null_statement)))
|
||||||
(parameter_association
|
(statement
|
||||||
(expression
|
(procedure_call_statement
|
||||||
(relation
|
(identifier))))))))))
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(null_statement)))))
|
|
||||||
(sequence_of_statements
|
|
||||||
(statement
|
|
||||||
(simple_statement
|
|
||||||
(procedure_call_statement
|
|
||||||
(identifier))))))))))))))))))
|
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(statement
|
(statement
|
||||||
(simple_statement
|
(null_statement)))
|
||||||
(null_statement))))
|
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(statement
|
(statement
|
||||||
(simple_statement
|
(procedure_call_statement
|
||||||
(procedure_call_statement
|
(identifier))))
|
||||||
(identifier)))))
|
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(statement
|
(statement
|
||||||
(simple_statement
|
(procedure_call_statement
|
||||||
(procedure_call_statement
|
(identifier)))))
|
||||||
(identifier))))))
|
|
||||||
|
|
|
||||||
|
|
@ -12,22 +12,13 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(signed_integer_type_definition
|
||||||
(type_definition
|
(term
|
||||||
(integer_type_definition
|
(numeric_literal))
|
||||||
(signed_integer_type_definition
|
(term
|
||||||
(simple_expression
|
(numeric_literal))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -45,26 +36,17 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(derived_type_definition
|
||||||
(type_definition
|
(identifier))
|
||||||
(derived_type_definition
|
(aspect_specification
|
||||||
(subtype_indication
|
(aspect_mark_list
|
||||||
(identifier))))
|
(aspect_association
|
||||||
(aspect_specification
|
(identifier)
|
||||||
(aspect_mark_list
|
(expression
|
||||||
(aspect_association
|
(term
|
||||||
(aspect_mark
|
(numeric_literal)))))))
|
||||||
(identifier))
|
|
||||||
(aspect_definition
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -81,19 +63,12 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
(identifier)
|
(modular_type_definition
|
||||||
(type_definition
|
(expression
|
||||||
(integer_type_definition
|
(term
|
||||||
(modular_type_definition
|
(numeric_literal)))))
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -112,73 +87,36 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
|
(derived_type_definition
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(range_constraint
|
||||||
(derived_type_definition
|
(range_g
|
||||||
(subtype_indication
|
(term
|
||||||
(identifier)
|
(numeric_literal))
|
||||||
(constraint
|
(term
|
||||||
(scalar_constraint
|
(numeric_literal))))))
|
||||||
(range_constraint
|
(full_type_declaration
|
||||||
(range_g
|
(identifier)
|
||||||
(simple_expression
|
(decimal_fixed_point_definition
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))
|
||||||
(numeric_literal)))))
|
(expression
|
||||||
(simple_expression
|
(term
|
||||||
(term
|
(numeric_literal)))))
|
||||||
(factor
|
(full_type_declaration
|
||||||
(primary
|
(identifier)
|
||||||
(numeric_literal))))))))))))))
|
(ordinary_fixed_point_definition
|
||||||
(type_declaration
|
(expression
|
||||||
(full_type_declaration
|
(term
|
||||||
(identifier)
|
(numeric_literal)))
|
||||||
(type_definition
|
(real_range_specification
|
||||||
(real_type_definition
|
(term
|
||||||
(fixed_point_definition
|
(numeric_literal))
|
||||||
(decimal_fixed_point_definition
|
(term
|
||||||
(expression
|
(numeric_literal)))))
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))))
|
|
||||||
(type_declaration
|
|
||||||
(full_type_declaration
|
|
||||||
(identifier)
|
|
||||||
(type_definition
|
|
||||||
(real_type_definition
|
|
||||||
(fixed_point_definition
|
|
||||||
(ordinary_fixed_point_definition
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(real_range_specification
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -196,53 +134,33 @@ end P;
|
||||||
(compilation_unit
|
(compilation_unit
|
||||||
(package_specification
|
(package_specification
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_declaration
|
(full_type_declaration
|
||||||
(full_type_declaration
|
(identifier)
|
||||||
|
(enumeration_type_definition
|
||||||
(identifier)
|
(identifier)
|
||||||
(type_definition
|
(identifier)))
|
||||||
(enumeration_type_definition
|
(enumeration_representation_clause
|
||||||
(identifier)
|
(identifier)
|
||||||
(identifier)))))
|
(enumeration_aggregate
|
||||||
(aspect_clause
|
(named_array_aggregate
|
||||||
(enumeration_representation_clause
|
(array_component_association
|
||||||
(identifier)
|
(discrete_choice_list
|
||||||
(enumeration_aggregate
|
(discrete_choice
|
||||||
(array_aggregate
|
|
||||||
(named_array_aggregate
|
|
||||||
(array_component_association
|
|
||||||
(discrete_choice_list
|
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier)))))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))))
|
||||||
(numeric_literal))))))))
|
(array_component_association
|
||||||
(array_component_association
|
(discrete_choice_list
|
||||||
(discrete_choice_list
|
(discrete_choice
|
||||||
(discrete_choice
|
|
||||||
(expression
|
|
||||||
(relation
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(identifier)))))))))
|
|
||||||
(expression
|
(expression
|
||||||
(relation
|
(term
|
||||||
(simple_expression
|
(identifier)))))
|
||||||
(term
|
(expression
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal)))))))
|
||||||
(numeric_literal)))))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
@ -262,50 +180,25 @@ end P;
|
||||||
(identifier)
|
(identifier)
|
||||||
(subtype_declaration
|
(subtype_declaration
|
||||||
(identifier)
|
(identifier)
|
||||||
(subtype_indication
|
(identifier)
|
||||||
(identifier)
|
(range_constraint
|
||||||
(constraint
|
(range_g
|
||||||
(scalar_constraint
|
(term
|
||||||
(range_constraint
|
(numeric_literal))
|
||||||
(range_g
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(subtype_declaration
|
(subtype_declaration
|
||||||
(identifier)
|
(identifier)
|
||||||
(subtype_indication
|
(identifier)
|
||||||
(identifier)
|
(index_constraint
|
||||||
(constraint
|
(range_g
|
||||||
(index_constraint
|
(term
|
||||||
(discrete_range
|
(numeric_literal))
|
||||||
(range_g
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))
|
||||||
(term
|
(range_g
|
||||||
(factor
|
(term
|
||||||
(primary
|
(numeric_literal))
|
||||||
(numeric_literal)))))
|
(term
|
||||||
(simple_expression
|
(numeric_literal)))))
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))
|
|
||||||
(discrete_range
|
|
||||||
(range_g
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))
|
|
||||||
(simple_expression
|
|
||||||
(term
|
|
||||||
(factor
|
|
||||||
(primary
|
|
||||||
(numeric_literal)))))))))))
|
|
||||||
(identifier))))
|
(identifier))))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user