cxxrtl: escape colon in variable names in VCD writer.
authorwhitequark <whitequark@whitequark.org>
Mon, 19 Jul 2021 16:20:49 +0000 (16:20 +0000)
committerwhitequark <whitequark@whitequark.org>
Mon, 19 Jul 2021 16:22:55 +0000 (16:22 +0000)
commitfc84f230011b5a2eab1eefc319e8646b3ca2f657
treeaddd3aaf811686be618034c4a179320946613acd
parent9af88951bca3de799b9af121a45ad8c8d41dab2e
cxxrtl: escape colon in variable names in VCD writer.

The following VCD file crashes GTKWave's VCD loader:

    $var wire 1 ! x:1 $end
    $enddefinitions $end

In practice, a colon can be a part of a variable name that is
translated from a Verilog function, something like:

    update$func$.../hdl/hazard3_csr.v:350$2534.$result
backends/cxxrtl/cxxrtl_vcd.h