================================================================================ Definite ================================================================================ package P is type A is array (1 .. 2) of Boolean; V : constant A := (1 => True, 2 => False); V2 : constant A := (1 => True, others => False); end P; -------------------------------------------------------------------------------- (compilation (compilation_unit (package_specification (name (identifier)) (type_declaration (full_type_declaration (identifier) (type_definition (array_type_definition (constrained_array_definition (discrete_subtype_definition (range_g (simple_expression (term (factor (primary (numeric_literal))))) (simple_expression (term (factor (primary (numeric_literal))))))) (component_definition (subtype_indication (name (identifier))))))))) (object_declaration (defining_identifier_list (identifier)) (subtype_indication (name (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))))))))) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier)))))))))) (array_component_association (discrete_choice_list (discrete_choice (expression (relation (simple_expression (term (factor (primary (numeric_literal))))))))) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier))))))))))))))))))))) (object_declaration (defining_identifier_list (identifier)) (subtype_indication (name (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))))))))) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier)))))))))) (array_component_association (discrete_choice_list (discrete_choice)) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier))))))))))))))))))))) (name (identifier))))) ================================================================================ Indefinite ================================================================================ package P is type B is array (Natural range <>) of Boolean; V : constant B := (1 .. 2 => False); end P; -------------------------------------------------------------------------------- (compilation (compilation_unit (package_specification (name (identifier)) (type_declaration (full_type_declaration (identifier) (type_definition (array_type_definition (unconstrained_array_definition (index_subtype_definition (name (identifier))) (component_definition (subtype_indication (name (identifier))))))))) (object_declaration (defining_identifier_list (identifier)) (subtype_indication (name (identifier))) (assign_value (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)))))))) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier))))))))))))))))))))) (name (identifier))))) ================================================================================ 2D ================================================================================ package P is type C is array (Natural range <>, Integer range <>) of Boolean; V : constant C := (1 .. 2 => (1 .. 2 => False)); end P; -------------------------------------------------------------------------------- (compilation (compilation_unit (package_specification (name (identifier)) (type_declaration (full_type_declaration (identifier) (type_definition (array_type_definition (unconstrained_array_definition (index_subtype_definition (name (identifier))) (index_subtype_definition (name (identifier))) (component_definition (subtype_indication (name (identifier))))))))) (object_declaration (defining_identifier_list (identifier)) (subtype_indication (name (identifier))) (assign_value (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)))))))) (assoc_expression (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)))))))) (assoc_expression (expression (relation (simple_expression (term (factor (primary (name (identifier)))))))))))))))))))))))))))))))) (name (identifier)))))