data/full_repos/permissive/42434302/ivltests/automatic_events3.v
1: b'%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:8: Unsupported: Ignoring delay on this delayed statement.\n    #20 Source[0] = 1\'b1;\n    ^\n                  ... Use "/* verilator lint_off STMTDLY */" and lint_on around source to disable this message.\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:9: Unsupported: Ignoring delay on this delayed statement.\n    #20 Source[0] = 1\'b0;\n    ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:15: Unsupported: Ignoring delay on this delayed statement.\n  #15;\n  ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:17: Unsupported: Ignoring delay on this delayed statement.\n    #10 Source[1] = 1\'bx;\n    ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:18: Unsupported: Ignoring delay on this delayed statement.\n    #10 Source[1] = 1\'b1;\n    ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:19: Unsupported: Ignoring delay on this delayed statement.\n    #10 Source[1] = 1\'bx;\n    ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:20: Unsupported: Ignoring delay on this delayed statement.\n    #10 Source[1] = 1\'b0;\n    ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:27: syntax error, unexpected \'@\'\n  @(posedge Source[0]);\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:36: syntax error, unexpected \'@\'\n  @(negedge Source[0]);\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:47: syntax error, unexpected \'@\'\n  @(Source[0]) t = $time;\n  ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:48: Unsupported: Ignoring delay on this delayed statement.\n  #1 $display("Time %t : Source[0] edge", t);\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:56: syntax error, unexpected \'@\'\n  @(posedge Source[1]);\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:65: syntax error, unexpected \'@\'\n  @(negedge Source[1]);\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:76: syntax error, unexpected \'@\'\n  @(Source[1]) t = $time;\n  ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:77: Unsupported: Ignoring delay on this delayed statement.\n  #1 $display("Time %t : Source[1] edge", t);\n  ^\n%Warning-STMTDLY: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:83: Unsupported: Ignoring delay on this delayed statement.\n  #1;\n  ^\n%Error: data/full_repos/permissive/42434302/ivltests/automatic_events3.v:84: Unsupported: fork statements\n  fork\n  ^~~~\n%Error: Exiting due to 7 error(s), 10 warning(s)\n        ... See the manual and https://verilator.org for more assistance.\n'
module automatic_events3();

reg [1:0] Source;

initial begin
  Source[0] = 1'b0;
  forever begin
    #20 Source[0] = 1'b1;
    #20 Source[0] = 1'b0;
  end
end

initial begin
  Source[1] = 1'b0;
  #15;
  forever begin
    #10 Source[1] = 1'bx;
    #10 Source[1] = 1'b1;
    #10 Source[1] = 1'bx;
    #10 Source[1] = 1'b0;
  end
end

task automatic ReportPosEdge0;

begin
  @(posedge Source[0]);
  $display("Time %t : Source[0] rise", $time);
end

endtask

task automatic ReportNegEdge0;

begin
  @(negedge Source[0]);
  $display("Time %t : Source[0] fall", $time);
end

endtask

task automatic ReportAnyEdge0;

time t;

begin
  @(Source[0]) t = $time;
  #1 $display("Time %t : Source[0] edge", t);
end

endtask

task automatic ReportPosEdge1;

begin
  @(posedge Source[1]);
  $display("Time %t : Source[1] rise", $time);
end

endtask

task automatic ReportNegEdge1;

begin
  @(negedge Source[1]);
  $display("Time %t : Source[1] fall", $time);
end

endtask

task automatic ReportAnyEdge1;

time t;

begin
  @(Source[1]) t = $time;
  #1 $display("Time %t : Source[1] edge", t);
end

endtask

initial begin
  #1;
  fork
    repeat(2) ReportPosEdge0;
    repeat(2) ReportNegEdge0;
    repeat(4) ReportAnyEdge0;

    repeat(4) ReportPosEdge1;
    repeat(4) ReportNegEdge1;
    repeat(8) ReportAnyEdge1;
  join
  $finish;
end

endmodule
module automatic_events3();


reg [1:0] Source;

initial begin
  Source[0] = 1'b0;
  forever begin
    #20 Source[0] = 1'b1;
    #20 Source[0] = 1'b0;
  end
end

initial begin
  Source[1] = 1'b0;
  #15;
  forever begin
    #10 Source[1] = 1'bx;
    #10 Source[1] = 1'b1;
    #10 Source[1] = 1'bx;
    #10 Source[1] = 1'b0;
  end
end

task automatic ReportPosEdge0;

begin
  @(posedge Source[0]);
  $display("Time %t : Source[0] rise", $time);
end

endtask

task automatic ReportNegEdge0;

begin
  @(negedge Source[0]);
  $display("Time %t : Source[0] fall", $time);
end

endtask

task automatic ReportAnyEdge0;

time t;

begin
  @(Source[0]) t = $time;
  #1 $display("Time %t : Source[0] edge", t);
end

endtask

task automatic ReportPosEdge1;

begin
  @(posedge Source[1]);
  $display("Time %t : Source[1] rise", $time);
end

endtask

task automatic ReportNegEdge1;

begin
  @(negedge Source[1]);
  $display("Time %t : Source[1] fall", $time);
end

endtask

task automatic ReportAnyEdge1;

time t;

begin
  @(Source[1]) t = $time;
  #1 $display("Time %t : Source[1] edge", t);
end

endtask

initial begin
  #1;
  fork
    repeat(2) ReportPosEdge0;
    repeat(2) ReportNegEdge0;
    repeat(4) ReportAnyEdge0;

    repeat(4) ReportPosEdge1;
    repeat(4) ReportNegEdge1;
    repeat(8) ReportAnyEdge1;
  join
  $finish;
end

endmodule