The LAR instruction execution in the interpreter does not properly manage bounds checking, it would cause false positives on illegal bounds for example when the lower bound is specified as being negative. This could also cause issues of out of index errors not being detected.
The issue is do_array in arr(). The check should be done on the index to see if it is out of bounds, not on the bounds difference.
The LAR instruction execution in the interpreter does not properly manage bounds checking, it would cause false positives on illegal bounds for example when the lower bound is specified as being negative. This could also cause issues of out of index errors not being detected.
The issue is do_array in arr(). The check should be done on the index to see if it is out of bounds, not on the bounds difference.
Will be fixed in next commit.