Implement operator-based implicit type conversions.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@20724 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
@@ -11,7 +11,51 @@ out vec4 o;
|
||||
|
||||
uniform mat4x2 m;
|
||||
|
||||
struct s {
|
||||
float f;
|
||||
};
|
||||
|
||||
void main()
|
||||
{
|
||||
mat2x3 m23 = mat2x3(m);
|
||||
|
||||
int a;
|
||||
bool b;
|
||||
s sv = s(a);
|
||||
float[2] ia = float[2](3, i.y);
|
||||
float f1 = 1;
|
||||
float f = a;
|
||||
f = a;
|
||||
ivec3 iv3;
|
||||
vec3 v3 = iv3;
|
||||
f = f + a;
|
||||
f = a - f;
|
||||
f += a;
|
||||
f = a - f;
|
||||
v3 *= iv3;
|
||||
v3 = iv3 / 2.0;
|
||||
v3 = 3.0 * iv3;
|
||||
v3 = 2 * v3;
|
||||
v3 = v3 - 2;
|
||||
if (f < a ||
|
||||
a <= f ||
|
||||
f > a ||
|
||||
f >= a ||
|
||||
a == f ||
|
||||
f != a);
|
||||
f = b ? a : f;
|
||||
f = b ? f : a;
|
||||
f = b ? a : a;
|
||||
s news = sv;
|
||||
|
||||
i.xy + i.xyz; // ERROR
|
||||
m * i.xyz; // ERROR
|
||||
m + i; // ERROR
|
||||
int aoeu = 1.0; // ERROR
|
||||
f = b; // ERROR
|
||||
f = a + b; // ERROR
|
||||
f = b * a; // ERROR
|
||||
b = a; // ERROR
|
||||
b = b + f; // ERROR
|
||||
f |= b; // ERROR
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user