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

[Public WebGL] ogles preprocessor conformance test disambiguated factoring

Attached you will find an SVN repo unidiff patch to disambiguate the
various preprocessor errors that can occur in #line directives.
Specifically, macro expansion in line directives is now properly
tested. See <http://code.google.com/p/angleproject/issues/detail?id=183>
for a presently non-conforming implementation.

Here is an accounting of compliant behavior:

preprocess2_frag.frag should now PASS
preprocess11_frag.frag should FAIL
preprocess12_frag.frag should FAIL
preprocess13_frag.frag should FAIL
preprocess14_frag.frag should FAIL
preprocess15_frag.frag should FAIL
preprocess16_frag.frag should FAIL

I would have integrated these tests into the test suite except to
regenerate the autogenerated test suite you must have a working copy
of the private OpenGL ES conformance tests so I didn't do this. I
couldn't do a single iteration of browser testing because of this.
Sorry, Gregg, Khronos is making you do more work by playing semantic
games with their "open" standards.

I would like to see these tests used up-stream in the OpenGL ES 2.0
GLSL WG's (private) test suite. I release my contributions attached
into the Public Domain.

Failure to properly test for these bugs (and features) and enforce
conformance will lead to divergence between WebGLSL and OpenGL ES 2.0
GLSL. Divergence of these languages appears to be inevitable as the
WebGL WG produces fundamentally public standards and the OpenGL ES 2.0
WG produces fundamentally private standards (the standards
specification documents do not match ground truth or the test suites
and discussion is private).

Warm World Wide Web Wishes,

David Sheets
2nd Class Netizen

P.S. When is the WebGLSL specification going to be stored in the
public WebGL SVN repo? Can the official document be converted into
HTML like the vast majority of other web standards?

Attachment: you_ll_just_have_to_do_the_pp_dance_david_-_gdc_expo_floor.patch
Description: Binary data