diff --git a/tgt-vhdl/display.cc b/tgt-vhdl/display.cc index a461f9017..e2f43bc99 100644 --- a/tgt-vhdl/display.cc +++ b/tgt-vhdl/display.cc @@ -161,7 +161,8 @@ int draw_stask_display(vhdl_process *proc, stmt_container *container, display_write(container, new vhdl_const_string(" ")); } - display_line(container); + if (newline) + display_line(container); return 0; } diff --git a/tgt-vhdl/stmt.cc b/tgt-vhdl/stmt.cc index ab8accd68..ab3bad469 100644 --- a/tgt-vhdl/stmt.cc +++ b/tgt-vhdl/stmt.cc @@ -62,7 +62,9 @@ static int draw_stask(vhdl_process *proc, stmt_container *container, const char *name = ivl_stmt_name(stmt); if (strcmp(name, "$display") == 0) - return draw_stask_display(proc, container, stmt); + return draw_stask_display(proc, container, stmt, true); + else if (strcmp(name, "$write") == 0) + return draw_stask_display(proc, container, stmt, false); else if (strcmp(name, "$finish") == 0) return draw_stask_finish(proc, container, stmt); else {