When the rangecheck option is enabled for xelab in Vivado Simulator, a number of IP cores fail to elaborate with an error message similar to the following:
The use of a null vector is legal in VHDL, and is used in many IP cores to simplify highly generic code.
Questa does not report this error, even with the -rangecheck switch added to vcom.
Some of the affected IP cores:
The -rangecheck option enables run time value range check for VHDL.
You can disable this option to work around the issue.
The check for null vectors will be relaxed in Vivado 2015.1 and as a result the error will not occur in Vivado Simulator when -rangecheck is enabled.