verilator/test_regress/t/t_preproc_ifdef.v
Wilson Snyder 52912c6329 Convert repository to git from svn.
- Change .cvsignore to .gitignore
- Remove Id metacomments
- Cleanup whitespace at end of lines
2008-06-09 21:25:10 -04:00

44 lines
812 B
Verilog

// DESCRIPTION: Verilator: Verilog Test module
//
// This file ONLY is placed into the Public Domain, for any use,
// without warranty, 2007 by Wilson Snyder.
module t (/*AUTOARG*/);
integer num;
initial begin
num = 0;
`define EMPTY_TRUE
`ifndef EMPTY_TRUE
`error "Empty is still true"
`endif
`define A
`ifdef A $display("1A"); num = num + 1;
`ifdef C $stop;
`elsif A $display("2A"); num = num + 1;
`ifdef C $stop;
`elsif B $stop;
`else $display("3A"); num = num + 1;
`endif
`else $stop;
`endif
`elsif B $stop;
`ifdef A $stop;
`elsif A $stop;
`else
`endif
`elsif C $stop;
`else $stop;
`endif
if (num == 3) begin
$write("*-* All Finished *-*\n");
$finish;
end
else begin
$write("%%Error: Bad count: %d\n", num);
$stop;
end
end
endmodule