From: James A. Markevitch (jam@magic.com)
Date: Mon Feb 07 2000 - 20:42:03 PST
The latest BNF is ambiguous with respect to attribute_instances.
Specifically,
ordered_port_connection ::= [ expression ] [ attribute_instance ]
ystem_function_call :: system_function_identifier [ attribute_instance ]
[ ( expression { , expression } ) ]
The following module instantion results in an ambiguity:
modname newmod($time (* myattr *) );
Does the attribute apply to the $time function call or to the port in the
module?
One can override the default behavior by writing one of the following:
modname newmod(($time) (* myattr *) );
or
modname newmod(($time (* myattr *) ) );
Nevertheless, we have introduced an ambiguity into the language.
The ambiguity arises in other places as well:
Anywhere that a delay is followed by an attribute_instance:
net_declaration
gate_instantiation
udp_instantiation
procedural_timing_control_statement
Which could consist of a delay_control followed by a statement
which consists of just an attribute instance.
James Markevitch
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:54:11 PDT
and
sponsored by Boyd Technology, Inc.