* _analyze.py: added top-level conversion of nested Interfaces
tb_inc.v: this commit keeps popping up ...
* Added initial test for conversion of nested interfaces at the top-level
* added conversion in __main__ to allow 'visual' inspection of generated code
* corrected 'renaming'
test_interfaces2.py: added if __name__ == '__main__': section to test locally
test_toplevel_interfaces.py: reworked structure
* added clearing of _usednames list at start of conversion
* [ENH] Added tests for checking the VHDL code for picking up invalid names
* added check for double underscore in VHDL names
* corrected (with Henry's help) to run with Python 3.x
* added category=ToVHDLWarning in _nameValid() check
* move test for used VHDL name one level up
added a main i test_keywords.py to run the tests manually (and debug them with print() statements ...)
* corrected invalid_function_underscore to call on invalid_signal_underscore to solicit for a double underscore
* Added VHDL Keyword check for 'enum' member names
* removed wild *myhdl* import from _VHDLNameValidation.py
* Trying to break a circular import?
* replaced wild myhdl import in _toVHDL.py by dedicated code
* desperately trying
* disabled _nameValid() to get around circular import of Instantiator
* replaced (Python keyword) *bin* by *tobin*
* Trying with an *empty* __init__.py in the conversion folder
* reworked _toVHDL() method for enum
* forgot to handle *port enum*, factored code
added <if __name__ == '__main__':> conversion code to see the error(s)
While the current unsigned() method of intbv() class gives correct results, its internal coding is not optimal.
This is a patch to make internal code more efficient and more "conceptually correct".
If a list-of-signals is referenced in user defined code,
the conversion fails.
The string of the list-of-signals (LOS) was written instead
of the name of the reference to the LOS. A function was
added to resolve the name instead of the raw string
conversion of the type.
When using range() without parameter, a cryptic error message is displayed by converter :
File "xxx.py", line 1275, in visit_For
start, stop, step = args
ValueError: need more than 0 values to unpack
Replaces it by a useful information message :
raise ConversionError(kind, msg, info)
myhdl.ConversionError: in file xxx.py, line 49:
Requirement violation: at least one argument requested