aboutsummaryrefslogtreecommitdiffstats
path: root/frontends/verilog/verilog_parser.y
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2019-06-18 16:52:08 +0200
committerGitHub <noreply@github.com>2019-06-18 16:52:08 +0200
commit64947453e22404e570d670416ad66511a799e666 (patch)
treefcd06e221d5f3fb0f7c8f86be4c05b4b7b5b0b31 /frontends/verilog/verilog_parser.y
parentc23bbc429103ca84cb8a9cfb674aacf7d14109c6 (diff)
parent4b56f6646dbf819da9fa1fdd47bb4bbdf943be7f (diff)
downloadyosys-64947453e22404e570d670416ad66511a799e666.tar.gz
yosys-64947453e22404e570d670416ad66511a799e666.tar.bz2
yosys-64947453e22404e570d670416ad66511a799e666.zip
Merge pull request #1086 from udif/pr_elab_sys_tasks2
Fixed broken $error()/$info/$warning() on non-generate blocks (within always/initial blocks)
Diffstat (limited to 'frontends/verilog/verilog_parser.y')
-rw-r--r--frontends/verilog/verilog_parser.y14
1 files changed, 12 insertions, 2 deletions
diff --git a/frontends/verilog/verilog_parser.y b/frontends/verilog/verilog_parser.y
index a034f9601..ea8e457e8 100644
--- a/frontends/verilog/verilog_parser.y
+++ b/frontends/verilog/verilog_parser.y
@@ -133,7 +133,7 @@ struct specify_rise_fall {
}
%token <string> TOK_STRING TOK_ID TOK_CONSTVAL TOK_REALVAL TOK_PRIMITIVE
-%token <string> TOK_SVA_LABEL TOK_SPECIFY_OPER TOK_ELAB_TASK
+%token <string> TOK_SVA_LABEL TOK_SPECIFY_OPER TOK_MSG_TASKS
%token TOK_ASSERT TOK_ASSUME TOK_RESTRICT TOK_COVER TOK_FINAL
%token ATTR_BEGIN ATTR_END DEFATTR_BEGIN DEFATTR_END
%token TOK_MODULE TOK_ENDMODULE TOK_PARAMETER TOK_LOCALPARAM TOK_DEFPARAM
@@ -1881,6 +1881,16 @@ behavioral_stmt:
} opt_arg_list ';'{
ast_stack.pop_back();
} |
+ TOK_MSG_TASKS attr {
+ AstNode *node = new AstNode(AST_TCALL);
+ node->str = *$1;
+ delete $1;
+ ast_stack.back()->children.push_back(node);
+ ast_stack.push_back(node);
+ append_attr(node, $2);
+ } opt_arg_list ';'{
+ ast_stack.pop_back();
+ } |
attr TOK_BEGIN opt_label {
AstNode *node = new AstNode(AST_BLOCK);
ast_stack.back()->children.push_back(node);
@@ -2177,7 +2187,7 @@ gen_stmt:
delete $6;
ast_stack.pop_back();
} |
- TOK_ELAB_TASK {
+ TOK_MSG_TASKS {
AstNode *node = new AstNode(AST_TECALL);
node->str = *$1;
delete $1;