-
Notifications
You must be signed in to change notification settings - Fork 582
Open
Labels
Description
Compilation of the following SystemVerilog module throws an error:
module a(input uwire logic a1);
endmodule: a
module b();
wire logic b1;
a b_inst(.a1(b1));
not not_inst(b1, b1);
assign b1 = 'b0;
endmodule: bCommand:
iverilog -g2012 test.sv
Error output:
test.sv:5: vvp.tgt error: (implicit) uwire "b1" must have a single driver, found (2).
error: Code generation had 1 error(s).
Expected behavior:
This module should be compiled. b1 is declared as wire logic, but it looks like it's being treated as uwire instead.
This issue occurs in Icarus Verilog version 13.0 (devel) (s20250103-44-gf82c6c7b3)
Found by a verilog model using deptycheck