We are observing failures in the following WebGL conformance test when running on Chromium-based browsers:
Test: https://registry.khronos.org/webgl/sdk/tests/conformance/extensions/angle-instanced-arrays-out-of-bounds.html
Specifically, some cases in the section: "Test out-of-range instanced attributes" are failing.
FAIL getError expected: INVALID_OPERATION. Was NO_ERROR : after evaluating: ext.drawArraysInstancedANGLE(gl.TRIANGLES, 0, 9, 1)
Attempted Fix
A change was proposed in ANGLE to explicitly generate GL_INVALID_OPERATION via additional CPU-side validation:
https://chromium-review.googlesource.com/c/angle/angle/+/7588515
Feedback from ANGLE Code Owners
The required CPU-side validation to detect these out-of-range instanced attribute accesses is extremely expensive.
When backends ensure robust buffer access and memory safety, returning GL_INVALID_OPERATION may not provide meaningful additional value. Therefore, it was suggested that the WebGL specification might be reconsidered to avoid requiring this error in such cases.