2 Copyright (c) 2019 The Khronos Group Inc.
3 Use of this source code is governed by an MIT-style license that can be
4 found in the LICENSE.txt file.
10 <meta charset=
"utf-8">
11 <title>WebGL GLSL Conformance Tests - Ternary operator on arrays
</title>
12 <link rel=
"stylesheet" href=
"../../../resources/js-test-style.css"/>
13 <link rel=
"stylesheet" href=
"../../../resources/glsl-feature-tests.css"/>
14 <script src=
"../../../js/js-test-pre.js"></script>
15 <script src=
"../../../js/webgl-test-utils.js"></script>
16 <script src=
"../../../js/glsl-conformance-test.js"></script>
19 <div id=
"description"></div>
20 <div id=
"console"></div>
21 <script id=
"fshader-array-ternary-operator" type=
"x-shader/x-fragment">
22 precision mediump float;
27 float c[
3] = true ? a : b;
30 <script id=
"fshader-struct-array-ternary-operator" type=
"x-shader/x-fragment">
31 precision mediump float;
40 MyStruct d = true ? b : c;
45 description("Checks ternary operators for structs and arrays.");
47 GLSLConformanceTester
.runTests([
48 { fShaderId
: 'fshader-array-ternary-operator',
49 fShaderSuccess
: false,
51 passMsg
: "Using ternary operators with arrays is not allowed",
53 { fShaderId
: 'fshader-struct-array-ternary-operator',
54 fShaderSuccess
: false,
56 passMsg
: "By implication, using ternary operators with structs containing arrays is not allowed",
61 var successfullyParsed
= true;