mirror of
https://github.com/verilator/verilator.git
synced 2026-08-22 05:57:29 +02:00
Change ENDLABEL from warning into an error.
This commit is contained in:
@@ -17,6 +17,7 @@ Verilator 5.003 devel
|
|||||||
* Support named properties (#3667). [Ryszard Rozak, Antmicro Ltd]
|
* Support named properties (#3667). [Ryszard Rozak, Antmicro Ltd]
|
||||||
* Support randcase.
|
* Support randcase.
|
||||||
* Internal AST improvements, also affect XML format (#3721). [Geza Lore]
|
* Internal AST improvements, also affect XML format (#3721). [Geza Lore]
|
||||||
|
* Change ENDLABEL from warning into an error.
|
||||||
* Fix return type of $countbits functions to int (#3725). [Ryszard Rozak, Antmicro Ltd]
|
* Fix return type of $countbits functions to int (#3725). [Ryszard Rozak, Antmicro Ltd]
|
||||||
* Fix missing UNUSED warnings with --coverage (#3736). [alejandro-castro-ortegon]
|
* Fix missing UNUSED warnings with --coverage (#3736). [alejandro-castro-ortegon]
|
||||||
* Fix tracing parameters overridden with -G (#3723). [Iztok Jeras]
|
* Fix tracing parameters overridden with -G (#3723). [Iztok Jeras]
|
||||||
|
|||||||
@@ -1490,7 +1490,7 @@ Summary:
|
|||||||
Disable all lint related warning messages, and all style warnings. This is
|
Disable all lint related warning messages, and all style warnings. This is
|
||||||
equivalent to ``-Wno-ALWCOMBORDER -Wno-BSSPACE -Wno-CASEINCOMPLETE
|
equivalent to ``-Wno-ALWCOMBORDER -Wno-BSSPACE -Wno-CASEINCOMPLETE
|
||||||
-Wno-CASEOVERLAP -Wno-CASEX -Wno-CASTCONST -Wno-CASEWITHX -Wno-CMPCONST -Wno-COLONPLUS
|
-Wno-CASEOVERLAP -Wno-CASEX -Wno-CASTCONST -Wno-CASEWITHX -Wno-CMPCONST -Wno-COLONPLUS
|
||||||
-Wno-ENDLABEL -Wno-IMPLICIT -Wno-LITENDIAN -Wno-PINCONNECTEMPTY
|
-Wno-IMPLICIT -Wno-LITENDIAN -Wno-PINCONNECTEMPTY
|
||||||
-Wno-PINMISSING -Wno-SYNCASYNCNET -Wno-UNDRIVEN -Wno-UNSIGNED
|
-Wno-PINMISSING -Wno-SYNCASYNCNET -Wno-UNDRIVEN -Wno-UNSIGNED
|
||||||
-Wno-UNUSEDGENVAR -Wno-UNUSEDPARAM -Wno-UNUSEDSIGNAL
|
-Wno-UNUSEDGENVAR -Wno-UNUSEDPARAM -Wno-UNUSEDSIGNAL
|
||||||
-Wno-WIDTH`` plus the list shown for Wno-style.
|
-Wno-WIDTH`` plus the list shown for Wno-style.
|
||||||
@@ -1526,7 +1526,7 @@ Summary:
|
|||||||
enabled), but do not affect style messages. This is equivalent to
|
enabled), but do not affect style messages. This is equivalent to
|
||||||
``-Wwarn-ALWCOMBORDER -Wwarn-BSSPACE -Wwarn-CASEINCOMPLETE
|
``-Wwarn-ALWCOMBORDER -Wwarn-BSSPACE -Wwarn-CASEINCOMPLETE
|
||||||
-Wwarn-CASEOVERLAP -Wwarn-CASEX -Wwarn-CASTCONST -Wwarn-CASEWITHX -Wwarn-CMPCONST
|
-Wwarn-CASEOVERLAP -Wwarn-CASEX -Wwarn-CASTCONST -Wwarn-CASEWITHX -Wwarn-CMPCONST
|
||||||
-Wwarn-COLONPLUS -Wwarn-ENDLABEL -Wwarn-IMPLICIT -Wwarn-LITENDIAN
|
-Wwarn-COLONPLUS -Wwarn-IMPLICIT -Wwarn-LITENDIAN
|
||||||
-Wwarn-PINMISSING -Wwarn-REALCVT -Wwarn-UNSIGNED -Wwarn-WIDTH``.
|
-Wwarn-PINMISSING -Wwarn-REALCVT -Wwarn-UNSIGNED -Wwarn-WIDTH``.
|
||||||
|
|
||||||
.. option:: -Wwarn-style
|
.. option:: -Wwarn-style
|
||||||
|
|||||||
@@ -537,11 +537,11 @@ List Of Warnings
|
|||||||
|
|
||||||
.. option:: ENDLABEL
|
.. option:: ENDLABEL
|
||||||
|
|
||||||
Warns that a label attached to a "end"-something statement does not
|
Error that a label attached to a "end"-something statement does not
|
||||||
match the label attached to the block start.
|
match the label attached to the block start.
|
||||||
|
|
||||||
Ignoring this warning will only suppress the lint check, it will
|
This error is required by IEEE. Ignoring this warning will only suppress
|
||||||
simulate correctly.
|
the lint check, it will simulate correctly.
|
||||||
|
|
||||||
Faulty example:
|
Faulty example:
|
||||||
|
|
||||||
@@ -556,7 +556,7 @@ List Of Warnings
|
|||||||
|
|
||||||
.. code-block::
|
.. code-block::
|
||||||
|
|
||||||
%Warning-ENDLABEL: example.v:2:13: End label 'not_mine' does not match begin label 'mine'
|
%Error-ENDLABEL: example.v:2:13: End label 'not_mine' does not match begin label 'mine'
|
||||||
|
|
||||||
To repair either fix the end label's name, or remove entirely.
|
To repair either fix the end label's name, or remove entirely.
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -206,8 +206,8 @@ public:
|
|||||||
// Later -Werror- options may make more of these.
|
// Later -Werror- options may make more of these.
|
||||||
bool pretendError() const VL_MT_SAFE {
|
bool pretendError() const VL_MT_SAFE {
|
||||||
return (m_e == ASSIGNIN || m_e == BADSTDPRAGMA || m_e == BLKANDNBLK || m_e == BLKLOOPINIT
|
return (m_e == ASSIGNIN || m_e == BADSTDPRAGMA || m_e == BLKANDNBLK || m_e == BLKLOOPINIT
|
||||||
|| m_e == CONTASSREG || m_e == IMPURE || m_e == PINNOTFOUND || m_e == PKGNODECL
|
|| m_e == CONTASSREG || m_e == ENDLABEL || m_e == IMPURE || m_e == PINNOTFOUND
|
||||||
|| m_e == PROCASSWIRE // Says IEEE
|
|| m_e == PKGNODECL || m_e == PROCASSWIRE // Says IEEE
|
||||||
|| m_e == ZERODLY);
|
|| m_e == ZERODLY);
|
||||||
}
|
}
|
||||||
// Warnings to mention manual
|
// Warnings to mention manual
|
||||||
@@ -218,7 +218,7 @@ public:
|
|||||||
bool lintError() const VL_MT_SAFE {
|
bool lintError() const VL_MT_SAFE {
|
||||||
return (m_e == ALWCOMBORDER || m_e == BSSPACE || m_e == CASEINCOMPLETE
|
return (m_e == ALWCOMBORDER || m_e == BSSPACE || m_e == CASEINCOMPLETE
|
||||||
|| m_e == CASEOVERLAP || m_e == CASEWITHX || m_e == CASEX || m_e == CASTCONST
|
|| m_e == CASEOVERLAP || m_e == CASEWITHX || m_e == CASEX || m_e == CASTCONST
|
||||||
|| m_e == CMPCONST || m_e == COLONPLUS || m_e == ENDLABEL || m_e == IMPLICIT
|
|| m_e == CMPCONST || m_e == COLONPLUS || m_e == IMPLICIT
|
||||||
|| m_e == LATCH || m_e == LITENDIAN || m_e == PINMISSING || m_e == REALCVT
|
|| m_e == LATCH || m_e == LITENDIAN || m_e == PINMISSING || m_e == REALCVT
|
||||||
|| m_e == UNSIGNED || m_e == WIDTH);
|
|| m_e == UNSIGNED || m_e == WIDTH);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,18 +1,17 @@
|
|||||||
%Warning-ENDLABEL: t/t_hierarchy_identifier_bad.v:34:10: End label 'if_cnt_finish_bad' does not match begin label 'if_cnt_finish'
|
%Error-ENDLABEL: t/t_hierarchy_identifier_bad.v:34:10: End label 'if_cnt_finish_bad' does not match begin label 'if_cnt_finish'
|
||||||
34 | end : if_cnt_finish_bad
|
34 | end : if_cnt_finish_bad
|
||||||
| ^~~~~~~~~~~~~~~~~
|
| ^~~~~~~~~~~~~~~~~
|
||||||
... For warning description see https://verilator.org/warn/ENDLABEL?v=latest
|
... For error description see https://verilator.org/warn/ENDLABEL?v=latest
|
||||||
... Use "/* verilator lint_off ENDLABEL */" and lint_on around source to disable this message.
|
%Error-ENDLABEL: t/t_hierarchy_identifier_bad.v:40:10: End label 'generate_for_bad' does not match begin label 'generate_for'
|
||||||
%Warning-ENDLABEL: t/t_hierarchy_identifier_bad.v:40:10: End label 'generate_for_bad' does not match begin label 'generate_for'
|
|
||||||
40 | end : generate_for_bad
|
40 | end : generate_for_bad
|
||||||
| ^~~~~~~~~~~~~~~~
|
| ^~~~~~~~~~~~~~~~
|
||||||
%Warning-ENDLABEL: t/t_hierarchy_identifier_bad.v:47:10: End label 'generate_if_if_bad' does not match begin label 'generate_if_if'
|
%Error-ENDLABEL: t/t_hierarchy_identifier_bad.v:47:10: End label 'generate_if_if_bad' does not match begin label 'generate_if_if'
|
||||||
47 | end : generate_if_if_bad
|
47 | end : generate_if_if_bad
|
||||||
| ^~~~~~~~~~~~~~~~~~
|
| ^~~~~~~~~~~~~~~~~~
|
||||||
%Warning-ENDLABEL: t/t_hierarchy_identifier_bad.v:51:10: End label 'generate_if_else_bad' does not match begin label 'generate_if_else'
|
%Error-ENDLABEL: t/t_hierarchy_identifier_bad.v:51:10: End label 'generate_if_else_bad' does not match begin label 'generate_if_else'
|
||||||
51 | end : generate_if_else_bad
|
51 | end : generate_if_else_bad
|
||||||
| ^~~~~~~~~~~~~~~~~~~~
|
| ^~~~~~~~~~~~~~~~~~~~
|
||||||
%Warning-ENDLABEL: t/t_hierarchy_identifier_bad.v:54:13: End label 't_bad' does not match begin label 't'
|
%Error-ENDLABEL: t/t_hierarchy_identifier_bad.v:54:13: End label 't_bad' does not match begin label 't'
|
||||||
54 | endmodule : t_bad
|
54 | endmodule : t_bad
|
||||||
| ^~~~~
|
| ^~~~~
|
||||||
%Error: Exiting due to
|
%Error: Exiting due to
|
||||||
|
|||||||
Reference in New Issue
Block a user