verilator/test_regress/t/t_interface_array_nocolon_b...

32 lines
651 B
Systemverilog
Raw Normal View History

// DESCRIPTION: Verilator: Functionally demonstrate an array of interfaces
//
// This file ONLY is placed under the Creative Commons Public Domain.
// SPDX-FileCopyrightText: 2017 Mike Popoloski
// SPDX-License-Identifier: CC0-1.0
2026-03-08 23:26:40 +01:00
interface foo_intf (
input x
);
endinterface
2026-03-08 23:26:40 +01:00
module foo_subm (
input x
);
endmodule
2026-03-03 13:21:24 +01:00
module t;
2026-03-08 23:26:40 +01:00
localparam N = 3;
2026-03-08 23:26:40 +01:00
wire [2:0] X = 3'b110;
2026-03-08 23:26:40 +01:00
// Will cause ASCRANGE warning?
foo_intf foos[N] (.x(X)); // bad
foo_intf fool[1:3] (.x(X)); // bad
foo_intf foom[3:1] (.x(X)); // ok
2026-03-08 23:26:40 +01:00
foo_subm subs[N] (.x(X)); // bad
foo_subm subl[1:3] (.x(X)); // bad
foo_subm subm[3:1] (.x(X)); // ok
endmodule