[sv-bc] confusion during construct of string for $typename()

From: Sumay Guin <sumay_at_.....>
Date: Mon Dec 17 2007 - 01:24:25 PST
Hi,

   In Sv LRM IEE Std 1800-2005,at section 22.2 it is specified that 
during construction of string for output of system function $typename
   a `$' is used as the placeholder for the name of an anonymous 
unpacked array. But at the example of the description for $typename
   LRM said that $typename(X) will give 
"enum{A=32'd0,B=32'd1,C='32d99}A::e$1 " as output  for definition
   enum {A,B,C=99} X, belongs to the package A. But it contradicts the 
above statement because  anonymous enum definition has no unpacked
   dimension. So the output will be "enum{A=32'd0,B=32'd1,C='32d99}A::e" 
.it is not clear to me why "$1" is appended to the output for  
   $typename(X).Also for $typename(AB) why "$ " appeared at the output 
of $typename(AB) if the definition of AB is like
   module top;
    typedef struct {node A,B;} AB_t;
    AB_t AB[10];  // "struct{bit A;bit B;}top.AB_t$[0:9]"
   endmodule
 
  as type of AB is not anonymous structure type.

  Also in Sv LRM IEE Std 1800-2005 section 22.2 ,it is written that 
during construct of string for $typename actual encoded values are
  appended with enumeration named constants.what it means for not clear 
to me.Can any one help me to resolve the confusion for above
  examples specified at SV LRM 1800-2005.

Thanks & Regards,
Sumay
 
  

 

 



-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Mon Dec 17 01:29:58 2007

This archive was generated by hypermail 2.1.8 : Mon Dec 17 2007 - 01:30:19 PST