Bug 223315

Summary: webgl/1.0.x/conformance/glsl/bugs/character-set.html fails
Product: WebKit Reporter: Kimmo Kinnunen <kkinnunen>
Component: WebGLAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: dino, kbr, kkinnunen, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 228951    
Bug Blocks: 222812    

Description Kimmo Kinnunen 2021-03-16 23:33:59 PDT
webgl/1.0.4/conformance/glsl/bugs/character-set.html fails
Comment 1 Kimmo Kinnunen 2021-03-17 01:23:09 PDT
https://www.khronos.org/registry/webgl/sdk/tests/conformance/glsl/bugs/character-set.html?webglVersion=1&quiet=0&quick=1

This test checks character set validation for glsl.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Canvas.getContext
PASS context exists

Checking shader character set validation and compilation
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '$' in identifier until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '$' in comment until compilation.
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '$' in ifdef-out until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '$' in ifdef-out #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '$' in #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '$' in comment after #define until compilation.
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '"' in identifier until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '"' in comment until compilation.
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '"' in ifdef-out until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '"' in ifdef-out #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '"' in #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '"' in comment after #define until compilation.
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '一些注释' in identifier until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '一些注释' in comment until compilation.
test fragment shader
FAIL getError expected: NO_ERROR. Was INVALID_VALUE : shaderSource allows Out-of-charset string '一些注释' in ifdef-out until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '一些注释' in ifdef-out #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '一些注释' in #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '一些注释' in comment after #define until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in identifier until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in comment until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in #preproc until compilation.
test fragment shader
PASS getError was expected value: NO_ERROR : shaderSource allows Out-of-charset string '#line 42 "foo.glsl"' in comment after #define until compilation.

test: Out-of-charset string '$' in identifier MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '$' in identifier MUST NOT compile.

test: Out-of-charset string '$' in comment MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '$' in comment MUST compile.

test: Out-of-charset string '$' in ifdef-out MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
FAIL [unexpected fragment shader compile status] (expected: true) Out-of-charset string '$' in ifdef-out MUST compile.
test fragment shader info log

test: Out-of-charset string '$' in ifdef-out #preproc MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '$' in ifdef-out #preproc MUST compile.

test: Out-of-charset string '$' in #preproc MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '$' in #preproc MUST NOT compile.

test: Out-of-charset string '$' in comment after #define MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '$' in comment after #define MUST compile.

test: Out-of-charset string '"' in identifier MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '"' in identifier MUST NOT compile.

test: Out-of-charset string '"' in comment MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '"' in comment MUST compile.

test: Out-of-charset string '"' in ifdef-out MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
FAIL [unexpected fragment shader compile status] (expected: true) Out-of-charset string '"' in ifdef-out MUST compile.
test fragment shader info log

test: Out-of-charset string '"' in ifdef-out #preproc MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '"' in ifdef-out #preproc MUST compile.

test: Out-of-charset string '"' in #preproc MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '"' in #preproc MUST NOT compile.

test: Out-of-charset string '"' in comment after #define MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '"' in comment after #define MUST compile.

test: Out-of-charset string '一些注释' in identifier MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '一些注释' in identifier MUST NOT compile.

test: Out-of-charset string '一些注释' in comment MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '一些注释' in comment MUST compile.

test: Out-of-charset string '一些注释' in ifdef-out MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
FAIL [unexpected fragment shader compile status] (expected: true) Out-of-charset string '一些注释' in ifdef-out MUST compile.
test fragment shader info log

test: Out-of-charset string '一些注释' in ifdef-out #preproc MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '一些注释' in ifdef-out #preproc MUST compile.

test: Out-of-charset string '一些注释' in #preproc MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '一些注释' in #preproc MUST NOT compile.

test: Out-of-charset string '一些注释' in comment after #define MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '一些注释' in comment after #define MUST compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in identifier MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '#line 42 "foo.glsl"' in identifier MUST NOT compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in comment MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '#line 42 "foo.glsl"' in comment MUST compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out MUST compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out #preproc MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '#line 42 "foo.glsl"' in ifdef-out #preproc MUST compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in #preproc MUST NOT compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
PASS Out-of-charset string '#line 42 "foo.glsl"' in #preproc MUST NOT compile.

test: Out-of-charset string '#line 42 "foo.glsl"' in comment after #define MUST compile.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Out-of-charset string '#line 42 "foo.glsl"' in comment after #define MUST compile.

PASS successfullyParsed is true

TEST COMPLETE
PASS successfullyParsed is true

TEST COMPLETE
Comment 2 Kimmo Kinnunen 2021-03-17 01:36:53 PDT
*** Bug 223332 has been marked as a duplicate of this bug. ***
Comment 3 Kimmo Kinnunen 2021-03-17 01:45:53 PDT
At least macOS 11.3, iMacPro1,1, Radeon Pro Vega 56
Comment 4 Radar WebKit Bug Importer 2021-03-23 23:34:13 PDT
<rdar://problem/75772532>
Comment 5 Kimmo Kinnunen 2021-08-11 11:01:54 PDT
Fixed by cherry-pick in bug 228951