[sv-ac] RE: if ... else ... property change

From: Prabhakar, Anupam <anupam_prabhakar@mentor.com>
Date: Thu Aug 25 2011 - 08:35:58 PDT

This actually is backward compatible (as mentioned in the mantis). property_expr is also a property_statement which allows a ';'.

property_statement ::=
property_expr ;
...

property_expr ::=
...
| property_statement
...

Anupam

-----Original Message-----
From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of Bresticker, Shalom
Sent: Thursday, August 25, 2011 2:58 AM
To: Kulshrestha, Manisha; sv-ac@eda-stds.org
Subject: [sv-ac] RE: if ... else ... property change

Hi,

The change came from Mantis 2173.
I agree it is a mistake.

Shalom

> -----Original Message-----
> From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of
> Kulshrestha, Manisha
> Sent: Thursday, August 25, 2011 11:21 AM
> To: sv-ac@eda-stds.org
> Subject: [sv-ac] if ... else ... property change
>
> 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

---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Thu Aug 25 08:36:28 2011

This archive was generated by hypermail 2.1.8 : Thu Aug 25 2011 - 08:36:32 PDT