RE: [sv-bc] search rules for type vs interface

From: Brad Pierce <Brad.Pierce_at_.....>
Date: Wed Jul 23 2008 - 09:50:51 PDT
Daniel,

The answer to your question

  module top (T i); //T is a type or T is an interface??????

should be independent of where the interface is declared, such as

  1)  In the same file as "top", before "top" in the text
  2)  In the same file as "top", after "top" in the text
  3)  In a different file than "top", already read
  4)  In a different file than "top", not yet read

Suppose that the answer were "interface" -- you would have to wait until
you've seen every file before being able to parse "top", because of the
possibility that there might be an interface "T" declared somewhere.

Hence, the answer is "type".

-- Brad


-----Original Message-----
From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of
Daniel Mlynek
Sent: Wednesday, July 23, 2008 11:48 PM
To: 'Greg Jaxon'
Cc: sv-bc@eda-stds.org
Subject: RE: [sv-bc] search rules for type vs interface

But direction and kind can be implicit. If I remove interface from the
code
I've post then type integer wire will be used as port type - I do not
need
to write :input T i


DANiel 

-----Original Message-----
From: Greg Jaxon [mailto:Greg.Jaxon@synopsys.com] 
Sent: 23 lipca 2008 17:42
To: Daniel Mlynek
Cc: sv-bc@eda-stds.org
Subject: Re: [sv-bc] search rules for type vs interface

Daniel,

    I'm sorry to report that only the context can determine which
definition
of T applies in each circumstance.
In the case you've asked about, T can only refer to the interface,
whereas
in "module top( input T i );", it can only refer to the typedef.  The
fact
that this is beyond the capabilities of context-free scanners and
parsers is
worth noting.

Greg


Daniel Mlynek wrote:
> interface T;
> endinterface
> 
> typedef integer T;
> 
> module top (T i); //T is a type or T is an interface??????
>  initial $display("%b", i);
> endmodule
>  
> DANiel
> 
> --
> This message has been scanned for viruses and dangerous content by 
> *MailScanner* <http://www.mailscanner.info/>, and is believed to be 
> clean.


-- 
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 Wed Jul 23 09:51:43 2008

This archive was generated by hypermail 2.1.8 : Wed Jul 23 2008 - 09:52:15 PDT