[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Public WebGL] Bug in conformance/glsl/misc/shader-with-line-directive.html

Alok Priyadarshi from the Chrome team has been working for several months on a brand new preprocessor for the ANGLE shader translator. This new preprocessor has been written from the ground up and has hundreds of associated unit tests. It has recently been turned on in Chromium builds by default. The old preprocessor in ANGLE has historically been one of the buggiest areas of the compiler, so Alok's rewrite is both timely and welcome.

The new preprocessor turned up a bug in the conformance/glsl/misc/shader-with-line-directive.html test. The test incorrectly assumes that the error will occur at line 124, when it should happen at line 123. See http://code.google.com/p/chromium/issues/detail?id=136441 .

I will update the top of tree test to be correct. This will cause it to start failing in Firefox and Safari until ANGLE is updated there, and presumably in Opera as well (unless Opera's preprocessor has always been correct, and it's been failing this test all along).

The question is what to do about the 1.0.1 version of the test. The test is wrong, but many implementations have been incorrectly passing the buggy version of the test. Should we:

  (a) update the test to be correct?
  (b) disable the test in the 1.0.1 conformance suite, so as not to retroactively add a new requirement?
  (c) do both (a) and (b)?
  (d) do something else?

Thanks for your feedback,