SVEditor code parser general problems
Status: Beta
Brought to you by:
mballance
Hi Developers,
Below a list of code lines that are compilable in our system but SVEditor flag them as errors.
1) else $fatal
See next code
pve_utils_pkg::pve_assert(this_transfer.randomize(* solvefaildebug *) with { /* blabla */ }) else $fatal (0, "Randomization pwm_slave failed"); //end assert
Another example
if(DELTA_SHIFT < 0 || (delta0 == 0 && DIVIDE == 1)) begin : DELTA0 assign clk0_del = clk0_in; assign rst0_del = rst0_in; end else if((DIVIDE == 1 && delta0 >= 0) || (DIVIDE > 1 && delta0 > 1)) begin assign clk0_del = clk0_loc; assign rst0_del = rst0_loc; end else begin $fatal(0, "FATAL: Invalid value combination"); end
See picture
2) usage of concatenation and parenthesis before "inside" keyword
disable iff(!AXI_RESETn) AWVALID && AWBURST==XBURSTTYPE_WRAP |-> (AWADDR % (1 << AWSIZE) =='0) && (({1'b0,AWLEN}+9'd1) inside {5'd2,5'd4,5'd8,5'd16}); endproperty
See picture
I add a new case
3) usage of with inside a cross coverage