| group invalid_declarations "Invalid declarations" |
| case attribute_in_vertex_main |
| expect compile_fail |
| vertex "" |
| void main() |
| { |
| attribute mediump float val; |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case attribute_in_fragment |
| expect compile_fail |
| vertex "" |
| void main() |
| { |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| attribute mediump float val; |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case uniform_in_vertex_main |
| expect compile_fail |
| vertex "" |
| void main() |
| { |
| uniform mediump float val; |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case uniform_in_fragment_main |
| expect compile_fail |
| vertex "" |
| void main() |
| { |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| uniform mediump float val; |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case varying_in_vertex_main |
| expect compile_fail |
| vertex "" |
| void main() |
| { |
| varying mediump float val; |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| varying mediump float val; |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case varying_in_fragment_main |
| expect compile_fail |
| vertex "" |
| varying mediump float val; |
| void main() |
| { |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| varying mediump float val; |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case invariant_attribute |
| expect compile_fail |
| vertex "" |
| invariant attribute mediump float val; |
| void main() |
| { |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| case invariant_uniform |
| expect compile_fail |
| vertex "" |
| invariant uniform mediump float val; |
| void main() |
| { |
| gl_Position = vec4(1.0); |
| } |
| "" |
| fragment "" |
| void main() |
| { |
| gl_FragColor = vec4(1.0); |
| } |
| "" |
| end |
| |
| end # invalid_declarations |
| |
| group unspecified_precision "Invalid declarations with unspecified precision" |
| |
| case float_partially_specified_fragment |
| expect compile_fail |
| vertex "" |
| ${VERTEX_DECLARATIONS} |
| void main() {} |
| "" |
| fragment "" |
| // no global precision qualifier (e.g. precision mediump float) |
| void main() { |
| mediump float x = 1.0; |
| vec3 y = vec3(x); |
| mediump vec4 z = vec4(y, x); |
| } |
| "" |
| end |
| |
| case float_fragment |
| expect compile_fail |
| vertex "" |
| void main() {} |
| "" |
| fragment "" |
| void main() { float v; } |
| "" |
| end |
| |
| case vec2_fragment |
| expect compile_fail |
| vertex "" |
| void main() {} |
| "" |
| fragment "" |
| void main() { vec2 v; } |
| "" |
| end |
| |
| case vec3_fragment |
| expect compile_fail |
| vertex "" |
| void main() {} |
| "" |
| fragment "" |
| void main() { vec3 v; } |
| "" |
| end |
| |
| case vec4_fragment |
| expect compile_fail |
| vertex "" |
| void main() {} |
| "" |
| fragment "" |
| void main() { vec4 v; } |
| "" |
| end |
| |
| end # unspecified_precision |