Hi,
Looks like there is a bug introduced in the BNF in the P1800-2009 LRM.
property_declaration ::=
property property_identifier [ ( [ property_port_list ] ) ] ;
{ assertion_variable_declaration }
property_statement_spec
endproperty [ : property_identifier ]
property_spec ::=
[clocking_event ] [ disable iff ( expression_or_dist ) ] property_expr
property_statement_spec ::=
[ clocking_event ] [ disable iff ( expression_or_dist ) ] property_statement
property_statement ::=
property_expr ;
| case ( expression_or_dist ) property_case_item { property_case_item } endcase
| if ( expression_or_dist ) property_expr [ else property_expr ]
In the above syntax, the 'if ... else ..' will not have semicolon at the end. Was this intentional ? This change makes it backward incompatible. Does anyone remember if this issue was discussed ?
The original syntax was:
property_declaration ::=
property property_identifier [ ( [ tf_port_list ] ) ] ;
{ assertion_variable_declaration }
property_spec ;
endproperty [ : property_identifier ]
property_spec ::=
[clocking_event ] [ disable iff ( expression_or_dist ) ] property_expr
property_expr ::=
sequence_expr
| ( property_expr )
| not property_expr
| property_expr or property_expr
| property_expr and property_expr
| sequence_expr |-> property_expr
| sequence_expr |=> property_expr
| if ( expression_or_dist ) property_expr [ else property_expr ]
| property_instance
| clocking_event property_expr
Thanks.
Manisha
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Thu Aug 25 01:21:48 2011
This archive was generated by hypermail 2.1.8 : Thu Aug 25 2011 - 01:22:03 PDT