Add UNSUPPORTED on property variable, instead of syntax error.

This commit is contained in:
Wilson Snyder 2024-11-09 22:26:59 -05:00
parent 0e11b0929c
commit bc87270ca9
2 changed files with 9 additions and 4 deletions

View File

@ -6224,10 +6224,11 @@ property_port_itemDirE:
;
property_declarationBody<nodep>: // IEEE: part of property_declaration
//UNSUP assertion_variable_declarationList property_statement_spec {}
assertion_variable_declarationList
{ $$ = nullptr; BBUNSUP($1->fileline(), "Unsupported: property variable declaration"); }
// // IEEE-2012: Incorrectly has yCOVER ySEQUENCE then property_spec here.
// // Fixed in IEEE 1800-2017
property_spec { $$ = $1; }
| property_spec { $$ = $1; }
| property_spec ';' { $$ = $1; }
;

View File

@ -1,10 +1,14 @@
%Error: t/t_assert_property_var_unsup.v:17:11: syntax error, unexpected IDENTIFIER, expecting "'{"
%Error-UNSUPPORTED: t/t_assert_property_var_unsup.v:17:11: Unsupported: property variable declaration
17 | int prevcyc;
| ^~~~~~~
... For error description see https://verilator.org/warn/UNSUPPORTED?v=latest
%Error: t/t_assert_property_var_unsup.v:18:7: syntax error, unexpected '(', expecting endproperty
18 | (valid, prevcyc = cyc) |=> (cyc == prevcyc + 1);
| ^
%Error-UNSUPPORTED: t/t_assert_property_var_unsup.v:24:31: Unsupported: property variable default value
24 | property with_def(int nine = 9);
| ^
... For error description see https://verilator.org/warn/UNSUPPORTED?v=latest
%Error: Internal Error: t/t_assert_property_var_unsup.v:7:8: ../V3ParseSym.h:#: Symbols suggest ending PROPERTY 'prop' but parser thinks ending MODULE 't'
7 | module t (
| ^
... See the manual at https://verilator.org/verilator_doc.html for more assistance.