Merge pull request #1544 from antmicro/msrs/fix-macros-without-parentheses
Fix calling system functions without parentheses
diff --git a/verilog/formatting/formatter_test.cc b/verilog/formatting/formatter_test.cc
index b0cf132..8f00b0a 100644
--- a/verilog/formatting/formatter_test.cc
+++ b/verilog/formatting/formatter_test.cc
@@ -3426,7 +3426,7 @@
" input bit [7:0] data_i [],\n"
" output bit [7:0] data_o []\n"
");\n"},
- {// module with system task call
+ {// module with system task call w or w/o parentheses
"module m; initial begin #10 $display(\"foo\"); $display(\"bar\");"
"end endmodule",
"module m;\n"
@@ -3435,6 +3435,15 @@
" $display(\"bar\");\n"
" end\n"
"endmodule\n"},
+ {// module with system task call
+ "module m; initial begin #10 $display; $display;"
+ "end endmodule",
+ "module m;\n"
+ " initial begin\n"
+ " #10 $display;\n"
+ " $display;\n"
+ " end\n"
+ "endmodule\n"},
// interface test cases
{// two interface declarations
diff --git a/verilog/formatting/tree_unwrapper.cc b/verilog/formatting/tree_unwrapper.cc
index c71f9a5..b7160a0 100644
--- a/verilog/formatting/tree_unwrapper.cc
+++ b/verilog/formatting/tree_unwrapper.cc
@@ -2060,8 +2060,9 @@
paren_group_ = FindDirectChild(main_node_,
OriginTagIs{NodeTag(NodeEnum::kParenGroup)});
+
+ // Macro can be used without parentheses
if (!paren_group_) {
- LOG_PARTITION_BUG("paren_group not found.");
return false;
}