In reply to MadhavSrikantam:
Although it’s possible to make this contrived example work like join_none or join_any
module top;
event ev_any, ev_none;
initial
begin
fork
begin : b1
-> ev_none;
#5 $display($time, " from block b1");
-> ev_any;
end : b1
begin : b2
-> ev_none;
#10 $display($time, " from block b2");
-> ev_any;
end : b2
begin
@(ev_none) // replace with @(ev_any) to get join_any functionality
$display($time, " from outside fork-join block");
end
join
end
endmodule
It would be very difficult to get this functionality was embedded inside a task or loop.