interface_name_shadow.sv 416 Bytes
Newer Older
1 2 3
interface I;
    logic [3:0] x;
endinterface
4 5 6 7 8 9
module A(I i);
    initial $display("A %b", i.x);
endmodule
module B #(localparam type I = logic [3:0]) (I i);
    initial $display("B %b", i);
endmodule
10 11 12 13 14 15 16 17
module top;
    I i();
    if (1) begin : blk
        typedef logic I;
        var I i;
        assign i = 0;
    end
    initial $display("%b %b", i.x, blk.i);
18 19 20
    A a(i);
    B b(i.x);
    assign i.x = 1;
21
endmodule