verilator/test_regress/t/t_param_bit_sel.v

32 lines
729 B
Systemverilog
Raw Normal View History

// DESCRIPTION: Verilator: Verilog Test module
//
// We see Verilator assumes a 1-bit parameter is a scalar rather than a 1-bit
// long vector. This causes the following code to fail.
//
// Other event drive simulators accept this.
//
// This file ONLY is placed under the Creative Commons Public Domain.
// SPDX-FileCopyrightText: 2013 Jeremy Bennett
// SPDX-License-Identifier: CC0-1.0
2026-03-10 02:38:29 +01:00
module t (
input clk
);
2026-03-10 02:38:29 +01:00
// At this point it is ambiguous whether a is scalar or vector
parameter A = 1'b0;
wire b = A[0];
// Note however b[0] is illegal.
2026-03-10 02:38:29 +01:00
always @(posedge clk) begin
if (b == 1'b0) begin
$write("*-* All Finished *-*\n");
$finish;
end
else begin
$stop;
end
end
endmodule