verilog: error out when non-ANSI task/func arguments
authorEddie Hung <eddie@fpgeh.com>
Mon, 11 May 2020 20:00:36 +0000 (13:00 -0700)
committerEddie Hung <eddie@fpgeh.com>
Mon, 11 May 2020 20:00:36 +0000 (13:00 -0700)
frontends/verilog/verilog_parser.y

index db9a130cf93dc17a8c97c43f11d3f20b73ec8e57..b7c6af91e836a576cf79d4a2dc028eb9e83c7dd4 100644 (file)
@@ -853,7 +853,11 @@ task_func_port:
                }
                if (astbuf2 && astbuf2->children.size() != 2)
                        frontend_verilog_yyerror("task/function argument range must be of the form: [<expr>:<expr>], [<expr>+:<expr>], or [<expr>-:<expr>]");
-       } wire_name | wire_name;
+       } wire_name |
+       {
+               if (!astbuf1)
+                       frontend_verilog_yyerror("Non-ANSI style task/function arguments not currently supported");
+       } wire_name;
 
 task_func_body:
        task_func_body behavioral_stmt |