Cover all grammar variants and remove dead AstSClocked method overrides

This commit is contained in:
Yilou Wang 2026-06-17 13:16:20 +02:00
parent 963998f12a
commit b8bab5093c
4 changed files with 18 additions and 7 deletions

View File

@ -2241,8 +2241,6 @@ public:
string emitVerilog() override { V3ERROR_NA_RETURN(""); } string emitVerilog() override { V3ERROR_NA_RETURN(""); }
string emitC() override { V3ERROR_NA_RETURN(""); } string emitC() override { V3ERROR_NA_RETURN(""); }
bool cleanOut() const override { V3ERROR_NA_RETURN(""); } bool cleanOut() const override { V3ERROR_NA_RETURN(""); }
int instrCount() const override { return widthInstrs(); }
bool isMultiCycleSva() const override { return false; }
}; };
class AstSConsRep final : public AstNodeExpr { class AstSConsRep final : public AstNodeExpr {
// Consecutive repetition [*N], [*N:M], [+], [*] (IEEE 1800-2023 16.9.2) // Consecutive repetition [*N], [*N:M], [+], [*] (IEEE 1800-2023 16.9.2)

View File

@ -15,7 +15,7 @@ module t (
// verilog_format: off // verible does not support clocking events inside sequence declarations // verilog_format: off // verible does not support clocking events inside sequence declarations
sequence s_single; sequence s_single;
@(posedge clk) a; @(posedge clk) a
endsequence endsequence
sequence s_multi; sequence s_multi;

View File

@ -11,12 +11,20 @@
: ... note: In instance 't' : ... note: In instance 't'
23 | @clk a; 23 | @clk a;
| ^ | ^
%Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:28:3: Unsupported: Unclocked assertion %Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:27:5: Unsupported: non-edge clocking event on a sequence; use an edge such as @(posedge clk)
: ... note: In instance 't' : ... note: In instance 't'
28 | assert property (s_nest ##1 a); 27 | @clk a
| ^
%Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:32:3: Unsupported: Unclocked assertion
: ... note: In instance 't'
32 | assert property (s_nest ##1 a);
| ^~~~~~ | ^~~~~~
%Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:29:3: Unsupported: Unclocked assertion %Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:33:3: Unsupported: Unclocked assertion
: ... note: In instance 't' : ... note: In instance 't'
29 | assert property (s_level); 33 | assert property (s_level);
| ^~~~~~
%Error-UNSUPPORTED: t/t_assert_seq_clocking_unsup.v:34:3: Unsupported: Unclocked assertion
: ... note: In instance 't'
34 | assert property (s_level2);
| ^~~~~~ | ^~~~~~
%Error: Exiting due to %Error: Exiting due to

View File

@ -22,10 +22,15 @@ module t (
sequence s_level; sequence s_level;
@clk a; @clk a;
endsequence endsequence
sequence s_level2;
@clk a
endsequence
// verilog_format: on // verilog_format: on
assert property (@(posedge clk2) s_multi); assert property (@(posedge clk2) s_multi);
assert property (s_nest ##1 a); assert property (s_nest ##1 a);
assert property (s_level); assert property (s_level);
assert property (s_level2);
endmodule endmodule