Arturo, > In that particular example, the clock-variables are not hierarchical > expressions. The "a" in question represents an interface modport, and > allows users to access the members of the interface or modport without > the need for creating hierarchical expressions to each > interface member. > > Not all dotted expressions are hierarchical references. That's a very interesting interpretation; I *think* that I rather fundamentally disagree, but let's put that to one side for now. If you're right, then the BNF is broken because the syntax for a clockvar in the BNF has only one choice: "signal_identifier". This in turn has only one choice, "identifier", which doesn't admit the form "modport_ID.signal_ID". So whichever way you look at Surya's problem, an LRM fix is required. The latest versions of three major simulators all choke on exactly this syntax, precisely as Surya said. Wouldn't it be easier and safer simply to outlaw it? The "hierarchical_expression" form of clockvar is an easy workaround, and it's clear that there are no backward- compatibility issues at this time. Nothing to lose. It's easy to relax a syntax restriction in a later version of the language; it's much harder to fix loosely-defined syntax retrospectively, when there's been enough time for all the back-compatibility traps to be well and truly baited. -- Jonathan Bromley, Consultant DOULOS - Developing Design Know-how VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services Doulos Ltd. Church Hatch, 22 Market Place, Ringwood, Hampshire, BH24 1AW, UK Tel: +44 (0)1425 471223 Email: jonathan.bromley@doulos.com Fax: +44 (0)1425 471573 Web: http://www.doulos.com The contents of this message may contain personal views which are not the views of Doulos Ltd., unless specifically stated. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jul 11 11:35:38 2007
This archive was generated by hypermail 2.1.8 : Wed Jul 11 2007 - 11:35:54 PDT