title: Changing to automatic clock causes output to go blank
body: <p>Trying to automate the clock for Delay Flip Flop in the testbench, because I don't want always do it manually like this:</p>
  <pre><code>clock = 0
  #5 clock = 1
  #10 clock = 0
  </code></pre>
  <p>But suddenly, my code (below) doesn't work.</p>
  <pre><code>module d_flip_flop
  (
      input [bit:0] a,
      input clock,
      output reg [bit:0] out
  );
      parameter bit = 4 - 1;
      always @(posedge clock)
          begin
              out = a;
          end
  endmodule
  </code></pre>
  <p>Testbench</p>
  <pre><code>module d_flip_flop_tb;
      reg [bit:0] a;
      reg clock;
      wire [bit:0] out;
      
      parameter bit = 4 - 1;
  
      d_flip_flop FLIP1
      (
          a,
          clock,
          out
      );
  
      initial
          begin
              clock = 0;
              forever
                  begin
                      #5 clock = ~clock;
                  end
              #1 assign a = 4'b0000;
              $display(&quot;INPUT  | %b&quot;, a);
              $monitor(&quot;OUTPUT | %b&quot;, out);
              #15 assign a = 4'b1111;
          end
  endmodule
  </code></pre>
  <p>The output seems to be blank, so I don't know what to change while it's not outputting any error (using Icarus v10). Also when I tick-tock the clock manually, it was working alright.</p>