mirror of
https://github.com/steveicarus/iverilog.git
synced 2026-09-03 07:53:23 +02:00
SystemVerilog allows to completely omit the `parameter` or `localparam` keyword in the parameter list. Both at the beginning and before redefining the parameter data type. This is not support in Verilog. Add regression tests that check that this is supported when in SystemVerilog mode. It is not valid to use an implicit data type e.g. just `signed` when `parameter` was omitted, add regression tests to check for this as well. Signed-off-by: Lars-Peter Clausen <[email protected]>
18 lines
458 B
Verilog
18 lines
458 B
Verilog
// Tests that it possible to omit the `parameter` keyword in a parameter port
|
|
// list before changing the parameter type in SystemVerilog. In Verilog this is
|
|
// not allowed and should result in an error.
|
|
|
|
module a #(parameter real A = 1.0, integer B = 2);
|
|
initial begin
|
|
if (A == 10.1 && B == 20) begin
|
|
$display("PASSED");
|
|
end else begin
|
|
$display("FAILED");
|
|
end
|
|
end
|
|
endmodule
|
|
|
|
module test;
|
|
a #(.A(10.1), .B(20)) i_a();
|
|
endmodule
|