1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
// DESCRIPTION: Verilator: Verilog Test module
//
// This file ONLY is placed under the Creative Commons Public Domain, for
// any use, without warranty, 2023 by Antmicro Ltd.
// SPDX-License-Identifier: CC0-1.0
typedef class Cls;
class A;
extern function void method();
endclass
class B;
extern function void method();
endclass
class C;
extern function void method();
endclass
class D;
extern function void method();
endclass
function void A::method();
B obj = new;
obj.method();
endfunction
function void B::method();
this.srandom(0);
endfunction
function void C::method();
this.srandom(0);
endfunction
function void D::method();
C obj = new;
obj.method();
endfunction
module t;
A obj1 = new;
D obj2 = new;
initial begin
obj1.method();
obj2.method();
end
endmodule
|