Cover all grammar variants and remove dead AstSClocked method overrides
This commit is contained in:
parent
963998f12a
commit
b8bab5093c
|
|
@ -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)
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue