A constant bit/part select is supposed to return 'bx when any of the select terms are undefined. I believe the base expression (ivl_expr_oper2()) should be set to an undefined constant and the width should be set to some error value (0). It is likely both the compiler and the vvp code generator need to be fixed. I found this while working on the VHDL code generator.
I'll need to verify my code for this case once the compiler is fixed.
I did not check indexed part selects to see if they
work as expected.
This is giving invalid results without an error or a work around, but is a very obscure problem so only +1 on the priority.