diff options
author | N. Engelhardt <nak@symbioticeda.com> | 2020-02-13 12:01:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-13 12:01:27 +0100 |
commit | e069259a5380073e4599ae689ee9e7ac1abdb6e7 (patch) | |
tree | ce1899e3544a640c92455c2a7d5714e8dd31ea8a | |
parent | c244b27b6db72b5341186f732c8fba030c177164 (diff) | |
parent | 90c78f1f85f7e519b3d99a71722bbb40e7ee2960 (diff) | |
download | yosys-e069259a5380073e4599ae689ee9e7ac1abdb6e7.tar.gz yosys-e069259a5380073e4599ae689ee9e7ac1abdb6e7.tar.bz2 yosys-e069259a5380073e4599ae689ee9e7ac1abdb6e7.zip |
Merge pull request #1679 from thasti/delay-parsing
Fix crash on wire declaration with delay
-rw-r--r-- | frontends/verilog/verilog_parser.y | 4 | ||||
-rw-r--r-- | tests/various/bug1614.ys | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/frontends/verilog/verilog_parser.y b/frontends/verilog/verilog_parser.y index 2c7304cc4..8840cf4e8 100644 --- a/frontends/verilog/verilog_parser.y +++ b/frontends/verilog/verilog_parser.y @@ -476,7 +476,7 @@ wire_type: astbuf3 = new AstNode(AST_WIRE); current_wire_rand = false; current_wire_const = false; - } wire_type_token_list delay { + } wire_type_token_list { $$ = astbuf3; }; @@ -1240,7 +1240,7 @@ wire_decl: } if (astbuf2 && astbuf2->children.size() != 2) frontend_verilog_yyerror("wire/reg/logic packed dimension must be of the form: [<expr>:<expr>], [<expr>+:<expr>], or [<expr>-:<expr>]"); - } wire_name_list { + } delay wire_name_list { delete astbuf1; if (astbuf2 != NULL) delete astbuf2; diff --git a/tests/various/bug1614.ys b/tests/various/bug1614.ys new file mode 100644 index 000000000..6fbe84a4c --- /dev/null +++ b/tests/various/bug1614.ys @@ -0,0 +1,5 @@ +read_verilog <<EOT +module testcase; + wire [3:0] #1 a = 4'b0000; +endmodule +EOT |