TMRG crashing on is_enum_element method
Summary
tmrg
now crashes on triplication of previously working module
Describe your setup
ECON, common aligner
TMRG Version
running release tmrg_v1.1.0
at tag REPRODUCED_81
Steps to reproduce
tbg test.sv
with test.sv
module a (input logic b[5]);
localparam B = 5;
wire bVoted[B] = b;
endmodule
What is the current bug behavior?
`tmrg crashes with the following message
>> tmrg test.sv
[WARNING] Unpacked net declaration with assignment is not supported. TMR may malfunction.
Traceback (most recent call last):
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/venv/bin/tmrg", line 11, in <module>
load_entry_point('tmrg', 'console_scripts', 'tmrg')()
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 2406, in main
tmrg.triplicate()
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 2133, in triplicate
tmrTokens = self.__triplicate(tokens)
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 296, in __triplicate
tmrToks = self.__triplicate(tokens[j], i+" ")
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 287, in __triplicate
tokens = self.triplicator[name](tokens)
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 1327, in __triplicate_module
moduleBody = self.__triplicate(moduleBody)
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 296, in __triplicate
tmrToks = self.__triplicate(tokens[j], i+" ")
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 287, in __triplicate
tokens = self.triplicator[name](tokens)
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 583, in __triplicate_netDeclWAssign
tmr = self.shouldTriplicate(ids)
File "/projects/TSMC65/devel65/VECON.01/workAreas/mlupi/HGCAL/econd_rtl_frm/utils/tmrg/tmrg/tmrg.py", line 1650, in shouldTriplicate
elif self.__is_enum_element(net):
AttributeError: 'TMR' object has no attribute '_TMR__is_enum_element'
Inside tmrg.py
the is_enum_element
method is not defined
What is the expected correct behavior?
tmrg
not crashing
NOTE: The warning reported ([WARNING] Unpacked net declaration with assignment is not supported. TMR may malfunction.
) does not make clear that the syntax is not systemverilog-compliant.
We might want to improve that.