Re: [sv-bc] Named blocks conflicts with existing identifiers

From: Gordon Vreugdenhil <gordonv_at_.....>
Date: Tue Dec 13 2005 - 07:18:40 PST
Bresticker, Shalom wrote:

> So this is true for functions, but not for tasks.

Right, but it isn't an issue for tasks since they can only
appear as statements (same with void functions which is why
they are a special case as well).  If you see a single
statement:
     f;
then you know that "f" must be either a task or void function
call and would resolve hierarchically.  If you have a simple
identifier in an expression context, that identifier must be
a declared variable or net.  In fact (I don't know whether this
was fortuitous or a recognized issue), even in the context of
a void case we are Ok since
     void'(f);
requires "f" to be a function call and not a general expression.


Gord.


> Shalom
> 
> 
>>-----Original Message-----
>>From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On
>>Behalf Of Brad Pierce
>>Sent: Tuesday, December 13, 2005 12:27 AM
>>To: sv-bc@eda.org
>>Subject: Re: [sv-bc] Named blocks conflicts with existing
>>identifiers
>>
>>
>>For more about omitting method call argument lists, see --
>>
>>    http://eda.org/svdb/bug_view_page.php?bug_id=93
>>
>>"Actually, you do.  Task/function calls are known to be so
>>directly due
>>to parentheses.  This was in fact an issue in the initial P1800
>>work where unparenthesized calls were permitted even for
>>functions
>>with simple names.  Due to the issues I am raising here, it was
>>recognized that this would intefere with implicit net creation
>>and
>>the P1800 rules (see 12.4.5) were changed so that a compiler
>>could
>>make correct assumptions."
>>
>>-- Brad
>>
> 
> 
> 
> 

-- 
--------------------------------------------------------------------
Gordon Vreugdenhil                                503-685-0808
Model Technology (Mentor Graphics)                gordonv@model.com
Received on Tue Dec 13 07:18:42 2005

This archive was generated by hypermail 2.1.8 : Tue Dec 13 2005 - 07:18:47 PST