diff --git a/test_regress/t/t_assert_procedural_clk.out b/test_regress/t/t_assert_procedural_clk.out deleted file mode 100644 index 365914727..000000000 --- a/test_regress/t/t_assert_procedural_clk.out +++ /dev/null @@ -1,9 +0,0 @@ -%Error: t/t_assert_procedural_clk.v:21:13: Unsupported: Procedural concurrent assertion with clocking event inside always (IEEE 1800-2017 16.14.6) - : ... note: In instance 't' - 21 | assume property (@(posedge clk) cyc == 9); - | ^~~~~~ -%Error: t/t_assert_procedural_clk.v:22:13: Unsupported: Procedural concurrent assertion with clocking event inside always (IEEE 1800-2017 16.14.6) - : ... note: In instance 't' - 22 | assume property (@(negedge clk) cyc == 9); - | ^~~~~~ -%Error: Exiting due to diff --git a/test_regress/t/t_assert_procedural_clk_bad.out b/test_regress/t/t_assert_procedural_clk_bad.out new file mode 100644 index 000000000..e1e26adee --- /dev/null +++ b/test_regress/t/t_assert_procedural_clk_bad.out @@ -0,0 +1,9 @@ +%Error: t/t_assert_procedural_clk_bad.v:21:13: Unsupported: Procedural concurrent assertion with clocking event inside always (IEEE 1800-2017 16.14.6) + : ... note: In instance 't' + 21 | assume property (@(posedge clk) cyc == 9); + | ^~~~~~ +%Error: t/t_assert_procedural_clk_bad.v:22:13: Unsupported: Procedural concurrent assertion with clocking event inside always (IEEE 1800-2017 16.14.6) + : ... note: In instance 't' + 22 | assume property (@(negedge clk) cyc == 9); + | ^~~~~~ +%Error: Exiting due to diff --git a/test_regress/t/t_assert_procedural_clk.pl b/test_regress/t/t_assert_procedural_clk_bad.pl similarity index 100% rename from test_regress/t/t_assert_procedural_clk.pl rename to test_regress/t/t_assert_procedural_clk_bad.pl diff --git a/test_regress/t/t_assert_procedural_clk.v b/test_regress/t/t_assert_procedural_clk_bad.v similarity index 100% rename from test_regress/t/t_assert_procedural_clk.v rename to test_regress/t/t_assert_procedural_clk_bad.v diff --git a/test_regress/t/t_assert_property_pexpr_unsup.pl b/test_regress/t/t_assert_property_pexpr_unsup.pl index c9ca914d8..fa4fb8b52 100755 --- a/test_regress/t/t_assert_property_pexpr_unsup.pl +++ b/test_regress/t/t_assert_property_pexpr_unsup.pl @@ -13,7 +13,7 @@ scenarios(vlt => 1); compile( expect_filename => $Self->{golden_filename}, verilator_flags2 => ['--assert --error-limit 1000'], - fails => 1, + fails => $Self->{vlt_all}, ); ok(1); diff --git a/test_regress/t/t_checker.pl b/test_regress/t/t_checker.pl index 1ce0595d2..657040447 100755 --- a/test_regress/t/t_checker.pl +++ b/test_regress/t/t_checker.pl @@ -13,7 +13,7 @@ scenarios(vlt => 1); compile( verilator_flags2 => ['--assert'], expect_filename => $Self->{golden_filename}, - fails => 1, + fails => $Self->{vlt_all}, ); #execute( diff --git a/test_regress/t/t_lint_always_comb_multidriven.out b/test_regress/t/t_lint_always_comb_multidriven.out deleted file mode 100644 index a9708f7f6..000000000 --- a/test_regress/t/t_lint_always_comb_multidriven.out +++ /dev/null @@ -1,87 +0,0 @@ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:26:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out1' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:26:16: - 26 | always_comb out1 = d; - | ^~~~ - t/t_lint_always_comb_multidriven.v:25:11: ... Location of other write - 25 | assign out1 = 1'b0; - | ^~~~ - ... For warning description see https://verilator.org/warn/MULTIDRIVEN?v=latest - ... Use "/* verilator lint_off MULTIDRIVEN */" and lint_on around source to disable this message. -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:29:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out2' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:29:16: - 29 | always_comb out2 = 1'b0; - | ^~~~ - t/t_lint_always_comb_multidriven.v:28:11: ... Location of other write - 28 | assign out2 = d; - | ^~~~ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:32:11: Variable also written to in always_comb (IEEE 1800-2017 9.2.2.2): 'out3' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:32:11: - 32 | assign out3 = 1'b0; - | ^~~~ - t/t_lint_always_comb_multidriven.v:31:16: ... Location of always_comb write - 31 | always_comb out3 = d; - | ^~~~ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:35:11: Variable also written to in always_comb (IEEE 1800-2017 9.2.2.2): 'out4' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:35:11: - 35 | assign out4 = d; - | ^~~~ - t/t_lint_always_comb_multidriven.v:34:16: ... Location of always_comb write - 34 | always_comb out4 = 1'b0; - | ^~~~ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:38:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out5' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:38:16: - 38 | always_comb out5 = d; - | ^~~~ - t/t_lint_always_comb_multidriven.v:37:16: ... Location of other write - 37 | always_comb out5 = 1'b0; - | ^~~~ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:41:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out6' - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:41:16: - 41 | always_comb out6 = 1'b0; - | ^~~~ - t/t_lint_always_comb_multidriven.v:40:16: ... Location of other write - 40 | always_comb out6 = d; - | ^~~~ -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:17:15: Bits [0:0] of signal 'out2' have multiple combinational drivers - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:28:16: ... Location of first driver - 28 | assign out2 = d; - | ^ - t/t_lint_always_comb_multidriven.v:29:21: ... Location of other driver - 29 | always_comb out2 = 1'b0; - | ^ - t/t_lint_always_comb_multidriven.v:17:15: ... Only the first driver will be respected -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:19:15: Bits [0:0] of signal 'out4' have multiple combinational drivers - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:34:21: ... Location of first driver - 34 | always_comb out4 = 1'b0; - | ^ - t/t_lint_always_comb_multidriven.v:35:16: ... Location of other driver - 35 | assign out4 = d; - | ^ - t/t_lint_always_comb_multidriven.v:19:15: ... Only the first driver will be respected -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:20:15: Bits [0:0] of signal 'out5' have multiple combinational drivers - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:37:21: ... Location of first driver - 37 | always_comb out5 = 1'b0; - | ^ - t/t_lint_always_comb_multidriven.v:38:21: ... Location of other driver - 38 | always_comb out5 = d; - | ^ - t/t_lint_always_comb_multidriven.v:20:15: ... Only the first driver will be respected -%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven.v:21:15: Bits [0:0] of signal 'out6' have multiple combinational drivers - : ... note: In instance 't' - t/t_lint_always_comb_multidriven.v:40:21: ... Location of first driver - 40 | always_comb out6 = d; - | ^ - t/t_lint_always_comb_multidriven.v:41:21: ... Location of other driver - 41 | always_comb out6 = 1'b0; - | ^ - t/t_lint_always_comb_multidriven.v:21:15: ... Only the first driver will be respected -%Error: Exiting due to diff --git a/test_regress/t/t_lint_always_comb_multidriven_bad.out b/test_regress/t/t_lint_always_comb_multidriven_bad.out new file mode 100644 index 000000000..478dab0f7 --- /dev/null +++ b/test_regress/t/t_lint_always_comb_multidriven_bad.out @@ -0,0 +1,87 @@ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:26:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out1' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:26:16: + 26 | always_comb out1 = d; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:25:11: ... Location of other write + 25 | assign out1 = 1'b0; + | ^~~~ + ... For warning description see https://verilator.org/warn/MULTIDRIVEN?v=latest + ... Use "/* verilator lint_off MULTIDRIVEN */" and lint_on around source to disable this message. +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:29:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out2' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:29:16: + 29 | always_comb out2 = 1'b0; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:28:11: ... Location of other write + 28 | assign out2 = d; + | ^~~~ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:32:11: Variable also written to in always_comb (IEEE 1800-2017 9.2.2.2): 'out3' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:32:11: + 32 | assign out3 = 1'b0; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:31:16: ... Location of always_comb write + 31 | always_comb out3 = d; + | ^~~~ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:35:11: Variable also written to in always_comb (IEEE 1800-2017 9.2.2.2): 'out4' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:35:11: + 35 | assign out4 = d; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:34:16: ... Location of always_comb write + 34 | always_comb out4 = 1'b0; + | ^~~~ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:38:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out5' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:38:16: + 38 | always_comb out5 = d; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:37:16: ... Location of other write + 37 | always_comb out5 = 1'b0; + | ^~~~ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:41:16: Variable written to in always_comb also written by other process (IEEE 1800-2017 9.2.2.2): 'out6' + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:41:16: + 41 | always_comb out6 = 1'b0; + | ^~~~ + t/t_lint_always_comb_multidriven_bad.v:40:16: ... Location of other write + 40 | always_comb out6 = d; + | ^~~~ +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:17:15: Bits [0:0] of signal 'out2' have multiple combinational drivers + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:28:16: ... Location of first driver + 28 | assign out2 = d; + | ^ + t/t_lint_always_comb_multidriven_bad.v:29:21: ... Location of other driver + 29 | always_comb out2 = 1'b0; + | ^ + t/t_lint_always_comb_multidriven_bad.v:17:15: ... Only the first driver will be respected +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:19:15: Bits [0:0] of signal 'out4' have multiple combinational drivers + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:34:21: ... Location of first driver + 34 | always_comb out4 = 1'b0; + | ^ + t/t_lint_always_comb_multidriven_bad.v:35:16: ... Location of other driver + 35 | assign out4 = d; + | ^ + t/t_lint_always_comb_multidriven_bad.v:19:15: ... Only the first driver will be respected +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:20:15: Bits [0:0] of signal 'out5' have multiple combinational drivers + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:37:21: ... Location of first driver + 37 | always_comb out5 = 1'b0; + | ^ + t/t_lint_always_comb_multidriven_bad.v:38:21: ... Location of other driver + 38 | always_comb out5 = d; + | ^ + t/t_lint_always_comb_multidriven_bad.v:20:15: ... Only the first driver will be respected +%Warning-MULTIDRIVEN: t/t_lint_always_comb_multidriven_bad.v:21:15: Bits [0:0] of signal 'out6' have multiple combinational drivers + : ... note: In instance 't' + t/t_lint_always_comb_multidriven_bad.v:40:21: ... Location of first driver + 40 | always_comb out6 = d; + | ^ + t/t_lint_always_comb_multidriven_bad.v:41:21: ... Location of other driver + 41 | always_comb out6 = 1'b0; + | ^ + t/t_lint_always_comb_multidriven_bad.v:21:15: ... Only the first driver will be respected +%Error: Exiting due to diff --git a/test_regress/t/t_lint_always_comb_multidriven.pl b/test_regress/t/t_lint_always_comb_multidriven_bad.pl similarity index 100% rename from test_regress/t/t_lint_always_comb_multidriven.pl rename to test_regress/t/t_lint_always_comb_multidriven_bad.pl diff --git a/test_regress/t/t_lint_always_comb_multidriven.v b/test_regress/t/t_lint_always_comb_multidriven_bad.v similarity index 100% rename from test_regress/t/t_lint_always_comb_multidriven.v rename to test_regress/t/t_lint_always_comb_multidriven_bad.v diff --git a/test_regress/t/t_lint_always_comb_multidriven_compile_public_flat.pl b/test_regress/t/t_lint_always_comb_multidriven_compile_public_flat_bad.pl similarity index 82% rename from test_regress/t/t_lint_always_comb_multidriven_compile_public_flat.pl rename to test_regress/t/t_lint_always_comb_multidriven_compile_public_flat_bad.pl index 9cf2c191e..48576365b 100755 --- a/test_regress/t/t_lint_always_comb_multidriven_compile_public_flat.pl +++ b/test_regress/t/t_lint_always_comb_multidriven_compile_public_flat_bad.pl @@ -10,12 +10,12 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di scenarios(vlt => 1); -top_filename("t/t_lint_always_comb_multidriven.v"); +top_filename("t/t_lint_always_comb_multidriven_bad.v"); lint( verilator_flags2 => ['--public-flat-rw --lint-only'], fails => 1, - expect_filename => "t/t_lint_always_comb_multidriven.out", + expect_filename => "t/t_lint_always_comb_multidriven_bad.out", ); ok(1);