[sv-ec] 1800-2005 7.16 Chaining constructors - restriction needed

From: danielm <danielm_at_.....>
Date: Wed Apr 09 2008 - 02:28:38 PDT
Chapter : 7.16 Chaining constructors :defines that there are 2 possible ways
to initialize base class constructor. IMHO there is lack of explicit
description what should happened if those both ways are used in the same
class.

There are two possible solution :it shoul be  forbidden. The other possible
solution is to define explicitly wich one should take precedence.

Cosnidre following example:

class B;
 function new (int i);
        $display(i);
endfunction
endclass

class C extends B (1);
        function new;
                super.new(2);//solution 1: this should trigger error becouse
base constructor is already defined
        endfunction
endclass


module top;
        C c=new;//solution 2: this should display 2 and LRM should
explicitly defines that super.new takes precedence on extends B(1)
endmodule


 

 

DANiel


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Apr 9 02:29:24 2008

This archive was generated by hypermail 2.1.8 : Wed Apr 09 2008 - 02:30:02 PDT