LRM: " In Verilog, an initialization value specified as part of the declaration is executed as if the assignment were made from an initial block, after simulation has started. In SystemVerilog, setting the initial value of a static variable as part of he variable declaration (including static class members) shall occur before any initial or always blocks are started." Is initialization really a part of declaration - if so then newly declared identifier is visble after ';', and in initialization phase this identifier remains not declared. I mean what should happened for below code: module top; parameter p=123; initial begin : _label int p=p; //this is circular illegal assignment p=p, or at the moment of initialization p from outer scope is still visible? $display(p); end endmodule DANiel -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Fri Apr 18 00:48:02 2008
This archive was generated by hypermail 2.1.8 : Fri Apr 18 2008 - 00:48:56 PDT