1
0

Sanity check compile-time vs simulation-time options

If user compiles without +define+DEBUG but then requests +vcdfile at
simulation time, that request would be silently ignored. This changes
it to a fatal error.

It's good philosophy to treat plusargs like +vcdfile as commands, not
suggestions, and die immediately if they cannot be honored, instead of
silently ignoring them. Otherwise the user sits through the entire
simulation and then is left scratching his head wondering where his
waveforms are.
This commit is contained in:
Scott Johnson 2016-10-24 14:45:34 -07:00
parent 737cf82478
commit f382ee70da

View File

@ -67,7 +67,15 @@ module TestDriver;
`define VCDPLUSCLOSE $dumpoff; `define VCDPLUSCLOSE $dumpoff;
`endif `endif
`else `else
// No +define+DEBUG
`define VCDPLUSCLOSE `define VCDPLUSCLOSE
if ($test$plusargs("vcdplusfile=") || $test$plusargs("vcdfile="))
begin
$fdisplay(stderr, "Error: +vcdfile or +vcdplusfile requested but compile did not have +define+DEBUG enabled");
$fatal;
end
`endif `endif
end end