Jim Lewis - 2017-02-25 -- see note. There is no alternative label for case generate or if generate in the EBNF for instance_name and path_name, so it is already clear in the LRM. Hence, I don't even think a note is warranted. OTOH, maybe we want these in instance_name and path_name and hence, see LCS_2016_015a - it is ok to vote no on both
Deleted LRM text is shown in RED with strike-through
LRM 8.7 bullet b)5) page 115 near top
Create new sub-bullet c) after sub-bullet b)5) adding the following text:
c) The alternative label possible in an 'if generate' or a 'case generate' statement does not form part of the path name.
Comments
Adding a c) doesn't make sense with the surrounding text.How about modifying (b.5) directly:
"5) For a generate statement label, the declarative region of the equivalent block corresponding to the generate statement.The alternative label possible in an 'if generate' or a 'case generate' statement must not appear in the path name.If the generate...."
-- Ryan Hinton - 2016-12-20
First I disagree with the bugzilla poster's assumption that the language did not intend to have those as part of the path name.
Both path name and instance name also include things more trivial things like loop labels. In addition, a "for generate" loop index value is included as part of the generate statement label in both path name and instance name.
Also whether you put a not somewhere else, this needs to be fixed in section 16.2.5 under path name and instance name. Currently the alternate labels are not included in the syntax - they need to be added. Like process label and loop label, if the optional label is not specified, it is empty label is included. Empty label has no characters. Hence, a path with an empty label has two consecutive path separators.
-- Jim Lewis - 2017-02-25