Open
Description
Hi all,
I'm a bit new to Clash, but am working on bringing some legacy code from .99 up to the most recent version. The original code has lines like:
nsec2 = mux (count .==. 0) nsec nsec2
That previously compiled to
always @(*) begin if(b_1) result_4 = t_1; else result_4 = result_4; end
However, the same lines now introduce a non-stable combinational loop when synthesized.
assign result_2 = b ? s_0 : result_2;
Is there some general solution to these errors, like explicitly adding an intermediary register? I didn't notice note of this in the migration guide or blog posts.
Thanks!