ISSUE 112

Number 112
Category errata
Synopsis Section A.9.3: "arrayed_identifier" BNF rule
State closed
Class duplicate
Arrival-DateSep 09 2002
Originator Dennis Marsa
Release 2001b
Environment
Description
Section A.9.3: defines the following BNF rules:

arrayed_identifier ::=
simple_arrayed_identifier
| escaped_arrayed_identifier

simple_arrayed_identifier ::=
simpled_identifier [ range ]

escaped_arrayed_identifier ::=
escaped_identifier [ range ]

Section A.9.3 further defines the BNF rule:

module_instance_identifier ::=
arrayed_identifier

Section A.4.1 defines the BNF rule for module
instance names:

name_of_instance ::=
module_instance_identifier [ range ]

Given these sets of rules, it appears that a module
instance name may have up to 2 range specifications
following it. The first optional range comes from
one of the rules simple_arrayed_identifier or
escaped_arrayed_identifer, while the second optional
range comes from the rule name_of_instance.

According to section 12.1.2, only a single optional
range is allowed.

Similar issues arise from the BNF rules:

name_of_udp_instance [Section A.5.4] and udp_instance_identifier
name_of_gate_instace [Section A.3.1] and gate_instace_identifier

Fix
************************************************************
Shalom: Close this issue as being duplicated by #200.
************************************************************

Two possible fixes come to mind:

1) Change rule "name_of_instance" in section A.4.1 to be

name_of_instance ::=
module_instance_identifier

which removes the optional range syntax, as it is
already present in the syntax for
module_instance_identifier.

Or, replace all uses of "name_of_instance" with
module_instance_identifier and remove rule
name_of_instance.

Do similarly for rules "name_of_udp_instance" and
"name_of_gate_instance".

2) Change rule "module_instance_identifier" to be:

module_instance_identifier ::=
identifier

which removes the option range from the syntax of a
module_instance_identifier, since it is already
present in the rule for "name_of_instance".

Modify udp_instance_identifier and gate_instance_identifier
similarly.

This would remove all references to the BNF rules:

arrayed_identifier

which would in turn remove all references to the rules:

simple_arrayed_identifier
escaped_arrayed_identifier
Audit-Trail
Unformatted


Hosted by Boyd Technology