I have a case where a VHDL entity (say vhdl_top) is instantiating a Verilog module with upper-case letters (say VERILOG_MODULE):
VERILOG:
module VERILOG_MODULE (
.....
endmodule
The component declaration and instantiation of this would be done in the vhdl_top:
VHDL:
component VERILOG_MODULE
...
end component;
inst_module: VERILOG_MODULE
....
The vhdl_parser.py in VUnit is parsing the vhdl_top, and converts the component declaration of VERILOG_MODULE to lower-case assuming that it is a VHDL component. However, the Verilog module name remains unconverted in case.
Therefore, we get warnings from the VUnit parser that look like this:
WARNING - vhdl_top.vhd: failed to find a primary design unit 'verilog_module' in library 'verilog_lib'
Since Verilog is case-sensitive, this creates a problem for VUnit to find the right dependencies and results in a wrong compilation order.