blob: fa88988dc19a629735925d0e51ef223e765d8758 [file] [log] [blame]
# WARNING: This file is auto-generated. Do NOT modify it manually, but rather
# modify the generating script file. Otherwise changes will be lost!
group invalid_implicit_conversions "Invalid Implicit Conversions"
case add_float_int_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
int b;
float c = a + b;
}
""
end
case add_float_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
float a;
int b;
int c = a + b;
}
""
end
case add_float_ivec2_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec2 b;
float c = a + b;
}
""
end
case add_float_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
float a;
ivec2 b;
ivec2 c = a + b;
}
""
end
case add_float_ivec3_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec3 b;
float c = a + b;
}
""
end
case add_float_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
float a;
ivec3 b;
ivec3 c = a + b;
}
""
end
case add_float_ivec4_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec4 b;
float c = a + b;
}
""
end
case add_float_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
float a;
ivec4 b;
ivec4 c = a + b;
}
""
end
case add_vec2_int_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
int b;
vec2 c = a + b;
}
""
end
case add_vec2_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec2 a;
int b;
int c = a + b;
}
""
end
case add_vec2_ivec2_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec2 b;
vec2 c = a + b;
}
""
end
case add_vec2_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec2 a;
ivec2 b;
ivec2 c = a + b;
}
""
end
case add_vec2_ivec3_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec3 b;
vec2 c = a + b;
}
""
end
case add_vec2_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec2 a;
ivec3 b;
ivec3 c = a + b;
}
""
end
case add_vec2_ivec4_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec4 b;
vec2 c = a + b;
}
""
end
case add_vec2_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec2 a;
ivec4 b;
ivec4 c = a + b;
}
""
end
case add_vec3_int_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
int b;
vec3 c = a + b;
}
""
end
case add_vec3_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec3 a;
int b;
int c = a + b;
}
""
end
case add_vec3_ivec2_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec2 b;
vec3 c = a + b;
}
""
end
case add_vec3_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec3 a;
ivec2 b;
ivec2 c = a + b;
}
""
end
case add_vec3_ivec3_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec3 b;
vec3 c = a + b;
}
""
end
case add_vec3_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec3 a;
ivec3 b;
ivec3 c = a + b;
}
""
end
case add_vec3_ivec4_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec4 b;
vec3 c = a + b;
}
""
end
case add_vec3_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec3 a;
ivec4 b;
ivec4 c = a + b;
}
""
end
case add_vec4_int_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
int b;
vec4 c = a + b;
}
""
end
case add_vec4_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec4 a;
int b;
int c = a + b;
}
""
end
case add_vec4_ivec2_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec2 b;
vec4 c = a + b;
}
""
end
case add_vec4_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec4 a;
ivec2 b;
ivec2 c = a + b;
}
""
end
case add_vec4_ivec3_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec3 b;
vec4 c = a + b;
}
""
end
case add_vec4_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec4 a;
ivec3 b;
ivec3 c = a + b;
}
""
end
case add_vec4_ivec4_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec4 b;
vec4 c = a + b;
}
""
end
case add_vec4_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec4 a;
ivec4 b;
ivec4 c = a + b;
}
""
end
case add_float_uint_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uint b;
float c = a + b;
}
""
end
case add_float_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
float a;
uint b;
uint c = a + b;
}
""
end
case add_float_uvec2_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec2 b;
float c = a + b;
}
""
end
case add_float_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
float a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_float_uvec3_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec3 b;
float c = a + b;
}
""
end
case add_float_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
float a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_float_uvec4_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec4 b;
float c = a + b;
}
""
end
case add_float_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
float a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_vec2_uint_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uint b;
vec2 c = a + b;
}
""
end
case add_vec2_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec2 a;
uint b;
uint c = a + b;
}
""
end
case add_vec2_uvec2_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec2 b;
vec2 c = a + b;
}
""
end
case add_vec2_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec2 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_vec2_uvec3_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec3 b;
vec2 c = a + b;
}
""
end
case add_vec2_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec2 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_vec2_uvec4_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec4 b;
vec2 c = a + b;
}
""
end
case add_vec2_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec2 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_vec3_uint_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uint b;
vec3 c = a + b;
}
""
end
case add_vec3_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec3 a;
uint b;
uint c = a + b;
}
""
end
case add_vec3_uvec2_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec2 b;
vec3 c = a + b;
}
""
end
case add_vec3_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec3 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_vec3_uvec3_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec3 b;
vec3 c = a + b;
}
""
end
case add_vec3_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec3 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_vec3_uvec4_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec4 b;
vec3 c = a + b;
}
""
end
case add_vec3_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec3 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_vec4_uint_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uint b;
vec4 c = a + b;
}
""
end
case add_vec4_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec4 a;
uint b;
uint c = a + b;
}
""
end
case add_vec4_uvec2_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec2 b;
vec4 c = a + b;
}
""
end
case add_vec4_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec4 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_vec4_uvec3_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec3 b;
vec4 c = a + b;
}
""
end
case add_vec4_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec4 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_vec4_uvec4_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec4 b;
vec4 c = a + b;
}
""
end
case add_vec4_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec4 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_int_uint_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uint b;
int c = a + b;
}
""
end
case add_int_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
int a;
uint b;
uint c = a + b;
}
""
end
case add_int_uvec2_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec2 b;
int c = a + b;
}
""
end
case add_int_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
int a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_int_uvec3_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec3 b;
int c = a + b;
}
""
end
case add_int_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
int a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_int_uvec4_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec4 b;
int c = a + b;
}
""
end
case add_int_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
int a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_ivec2_uint_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uint b;
ivec2 c = a + b;
}
""
end
case add_ivec2_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec2 a;
uint b;
uint c = a + b;
}
""
end
case add_ivec2_uvec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec2 b;
ivec2 c = a + b;
}
""
end
case add_ivec2_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec2 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_ivec2_uvec3_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec3 b;
ivec2 c = a + b;
}
""
end
case add_ivec2_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec2 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_ivec2_uvec4_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec4 b;
ivec2 c = a + b;
}
""
end
case add_ivec2_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec2 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_ivec3_uint_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uint b;
ivec3 c = a + b;
}
""
end
case add_ivec3_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec3 a;
uint b;
uint c = a + b;
}
""
end
case add_ivec3_uvec2_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec2 b;
ivec3 c = a + b;
}
""
end
case add_ivec3_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec3 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_ivec3_uvec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec3 b;
ivec3 c = a + b;
}
""
end
case add_ivec3_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec3 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_ivec3_uvec4_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec4 b;
ivec3 c = a + b;
}
""
end
case add_ivec3_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec3 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case add_ivec4_uint_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uint b;
ivec4 c = a + b;
}
""
end
case add_ivec4_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec4 a;
uint b;
uint c = a + b;
}
""
end
case add_ivec4_uvec2_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec2 b;
ivec4 c = a + b;
}
""
end
case add_ivec4_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec4 a;
uvec2 b;
uvec2 c = a + b;
}
""
end
case add_ivec4_uvec3_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec3 b;
ivec4 c = a + b;
}
""
end
case add_ivec4_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec4 a;
uvec3 b;
uvec3 c = a + b;
}
""
end
case add_ivec4_uvec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec4 b;
ivec4 c = a + b;
}
""
end
case add_ivec4_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec4 a;
uvec4 b;
uvec4 c = a + b;
}
""
end
case mul_float_int_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
int b;
float c = a * b;
}
""
end
case mul_float_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
float a;
int b;
int c = a * b;
}
""
end
case mul_float_ivec2_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec2 b;
float c = a * b;
}
""
end
case mul_float_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
float a;
ivec2 b;
ivec2 c = a * b;
}
""
end
case mul_float_ivec3_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec3 b;
float c = a * b;
}
""
end
case mul_float_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
float a;
ivec3 b;
ivec3 c = a * b;
}
""
end
case mul_float_ivec4_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec4 b;
float c = a * b;
}
""
end
case mul_float_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
float a;
ivec4 b;
ivec4 c = a * b;
}
""
end
case mul_vec2_int_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
int b;
vec2 c = a * b;
}
""
end
case mul_vec2_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec2 a;
int b;
int c = a * b;
}
""
end
case mul_vec2_ivec2_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec2 b;
vec2 c = a * b;
}
""
end
case mul_vec2_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec2 a;
ivec2 b;
ivec2 c = a * b;
}
""
end
case mul_vec2_ivec3_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec3 b;
vec2 c = a * b;
}
""
end
case mul_vec2_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec2 a;
ivec3 b;
ivec3 c = a * b;
}
""
end
case mul_vec2_ivec4_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
ivec4 b;
vec2 c = a * b;
}
""
end
case mul_vec2_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec2 a;
ivec4 b;
ivec4 c = a * b;
}
""
end
case mul_vec3_int_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
int b;
vec3 c = a * b;
}
""
end
case mul_vec3_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec3 a;
int b;
int c = a * b;
}
""
end
case mul_vec3_ivec2_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec2 b;
vec3 c = a * b;
}
""
end
case mul_vec3_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec3 a;
ivec2 b;
ivec2 c = a * b;
}
""
end
case mul_vec3_ivec3_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec3 b;
vec3 c = a * b;
}
""
end
case mul_vec3_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec3 a;
ivec3 b;
ivec3 c = a * b;
}
""
end
case mul_vec3_ivec4_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
ivec4 b;
vec3 c = a * b;
}
""
end
case mul_vec3_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec3 a;
ivec4 b;
ivec4 c = a * b;
}
""
end
case mul_vec4_int_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
int b;
vec4 c = a * b;
}
""
end
case mul_vec4_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
vec4 a;
int b;
int c = a * b;
}
""
end
case mul_vec4_ivec2_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec2 b;
vec4 c = a * b;
}
""
end
case mul_vec4_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
vec4 a;
ivec2 b;
ivec2 c = a * b;
}
""
end
case mul_vec4_ivec3_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec3 b;
vec4 c = a * b;
}
""
end
case mul_vec4_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
vec4 a;
ivec3 b;
ivec3 c = a * b;
}
""
end
case mul_vec4_ivec4_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
ivec4 b;
vec4 c = a * b;
}
""
end
case mul_vec4_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
vec4 a;
ivec4 b;
ivec4 c = a * b;
}
""
end
case mul_float_uint_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uint b;
float c = a * b;
}
""
end
case mul_float_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
float a;
uint b;
uint c = a * b;
}
""
end
case mul_float_uvec2_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec2 b;
float c = a * b;
}
""
end
case mul_float_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
float a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_float_uvec3_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec3 b;
float c = a * b;
}
""
end
case mul_float_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
float a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_float_uvec4_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
uvec4 b;
float c = a * b;
}
""
end
case mul_float_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
float a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_vec2_uint_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uint b;
vec2 c = a * b;
}
""
end
case mul_vec2_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec2 a;
uint b;
uint c = a * b;
}
""
end
case mul_vec2_uvec2_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec2 b;
vec2 c = a * b;
}
""
end
case mul_vec2_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec2 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_vec2_uvec3_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec3 b;
vec2 c = a * b;
}
""
end
case mul_vec2_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec2 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_vec2_uvec4_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec2 c;
vec2 a;
uvec4 b;
vec2 c = a * b;
}
""
end
case mul_vec2_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec2 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_vec3_uint_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uint b;
vec3 c = a * b;
}
""
end
case mul_vec3_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec3 a;
uint b;
uint c = a * b;
}
""
end
case mul_vec3_uvec2_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec2 b;
vec3 c = a * b;
}
""
end
case mul_vec3_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec3 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_vec3_uvec3_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec3 b;
vec3 c = a * b;
}
""
end
case mul_vec3_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec3 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_vec3_uvec4_vec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec3 c;
vec3 a;
uvec4 b;
vec3 c = a * b;
}
""
end
case mul_vec3_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec3 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_vec4_uint_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uint b;
vec4 c = a * b;
}
""
end
case mul_vec4_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
vec4 a;
uint b;
uint c = a * b;
}
""
end
case mul_vec4_uvec2_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec2 b;
vec4 c = a * b;
}
""
end
case mul_vec4_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
vec4 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_vec4_uvec3_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec3 b;
vec4 c = a * b;
}
""
end
case mul_vec4_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
vec4 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_vec4_uvec4_vec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
vec4 c;
vec4 a;
uvec4 b;
vec4 c = a * b;
}
""
end
case mul_vec4_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
vec4 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_int_uint_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uint b;
int c = a * b;
}
""
end
case mul_int_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
int a;
uint b;
uint c = a * b;
}
""
end
case mul_int_uvec2_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec2 b;
int c = a * b;
}
""
end
case mul_int_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
int a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_int_uvec3_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec3 b;
int c = a * b;
}
""
end
case mul_int_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
int a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_int_uvec4_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
int a;
uvec4 b;
int c = a * b;
}
""
end
case mul_int_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
int a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_ivec2_uint_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uint b;
ivec2 c = a * b;
}
""
end
case mul_ivec2_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec2 a;
uint b;
uint c = a * b;
}
""
end
case mul_ivec2_uvec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec2 b;
ivec2 c = a * b;
}
""
end
case mul_ivec2_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec2 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_ivec2_uvec3_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec3 b;
ivec2 c = a * b;
}
""
end
case mul_ivec2_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec2 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_ivec2_uvec4_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
ivec2 a;
uvec4 b;
ivec2 c = a * b;
}
""
end
case mul_ivec2_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec2 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_ivec3_uint_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uint b;
ivec3 c = a * b;
}
""
end
case mul_ivec3_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec3 a;
uint b;
uint c = a * b;
}
""
end
case mul_ivec3_uvec2_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec2 b;
ivec3 c = a * b;
}
""
end
case mul_ivec3_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec3 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_ivec3_uvec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec3 b;
ivec3 c = a * b;
}
""
end
case mul_ivec3_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec3 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_ivec3_uvec4_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
ivec3 a;
uvec4 b;
ivec3 c = a * b;
}
""
end
case mul_ivec3_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec3 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case mul_ivec4_uint_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uint b;
ivec4 c = a * b;
}
""
end
case mul_ivec4_uint_uint
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uint c;
ivec4 a;
uint b;
uint c = a * b;
}
""
end
case mul_ivec4_uvec2_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec2 b;
ivec4 c = a * b;
}
""
end
case mul_ivec4_uvec2_uvec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec2 c;
ivec4 a;
uvec2 b;
uvec2 c = a * b;
}
""
end
case mul_ivec4_uvec3_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec3 b;
ivec4 c = a * b;
}
""
end
case mul_ivec4_uvec3_uvec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec3 c;
ivec4 a;
uvec3 b;
uvec3 c = a * b;
}
""
end
case mul_ivec4_uvec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
ivec4 a;
uvec4 b;
ivec4 c = a * b;
}
""
end
case mul_ivec4_uvec4_uvec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
uvec4 c;
ivec4 a;
uvec4 b;
uvec4 c = a * b;
}
""
end
case sub_float_int_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
int b;
float c = a - b;
}
""
end
case sub_float_int_int
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
int c;
float a;
int b;
int c = a - b;
}
""
end
case sub_float_ivec2_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec2 b;
float c = a - b;
}
""
end
case sub_float_ivec2_ivec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec2 c;
float a;
ivec2 b;
ivec2 c = a - b;
}
""
end
case sub_float_ivec3_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec3 b;
float c = a - b;
}
""
end
case sub_float_ivec3_ivec3
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec3 c;
float a;
ivec3 b;
ivec3 c = a - b;
}
""
end
case sub_float_ivec4_float
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
float c;
float a;
ivec4 b;
float c = a - b;
}
""
end
case sub_float_ivec4_ivec4
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATIONS}
void main()
{
ivec4 c;
float a;
ivec4 b;
ivec4 c = a - b;
}
""
end
case sub_vec2_int_vec2
expect compile_fail
version 300 es
both ""
#version 300 es
precision mediump float;
precision mediump int;
${DECLARATI