Question 1: Can you use the "dot" to refer to a type declared inside a class? module top; class C; typedef bit T[4]; endclass C c = new; bit b; initial b = c.T'{0, 1, 0, 1}; endmodule The bnf for assignment pattern type does not allow the above, neither does it allow C::T'{0, 1, 0, 1} I also remember that we decided that hierarchical identifiers to types are not legal, but does c.T qualifies as a hierarchical identifier? or is it just what we called a dotted name? Question 2: Can a parameter initial expression be a class scoped identifier? The LRM currently only allows package references. I assume this is not legal: module top; class C #(parameter q = 0, parameter type T = byte); endclass parameter p = C::q; parameter type R = C::T; endmodule -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jul 9 13:29:39 2008
This archive was generated by hypermail 2.1.8 : Wed Jul 09 2008 - 13:30:20 PDT