diff --git a/Changes b/Changes index d9ebb1599..33999c758 100644 --- a/Changes +++ b/Changes @@ -7,6 +7,8 @@ The contributors that suggested a given feature are shown in []. Thanks! **** Fix TIMESCALE warnings on primitives (#2763). [Xuanqi] +**** Fix $fread extra semicolon inside statements. [Leendert van Doorn] + * Verilator 4.108 2021-01-10 diff --git a/src/V3EmitC.cpp b/src/V3EmitC.cpp index 95cb52af0..16936bb2d 100644 --- a/src/V3EmitC.cpp +++ b/src/V3EmitC.cpp @@ -748,7 +748,7 @@ public: } else { puts(cvtToStr(array_size)); } - puts(");\n"); + puts(")"); } virtual void visit(AstSysFuncAsTask* nodep) override { if (!nodep->lhsp()->isWide()) puts("(void)"); diff --git a/test_regress/t/t_sys_fread.v b/test_regress/t/t_sys_fread.v index 60921f3f0..9b1818faa 100644 --- a/test_regress/t/t_sys_fread.v +++ b/test_regress/t/t_sys_fread.v @@ -79,7 +79,8 @@ module t; clear; code = $fread(r_upb, file, 15); `checkd(code, 6); - code = $fread(r_ups, file, 15, 2); `checkd(code, 4); + // Bug where fread in if() broke. + if ($fread(r_ups, file, 15, 2) != 4) $stop; dump; $write("*-* All Finished *-*\n");