1617a3babSopenharmony_ci#version 120 2617a3babSopenharmony_ci 3617a3babSopenharmony_ciattribute vec3 v3; 4617a3babSopenharmony_ci 5617a3babSopenharmony_ciuniform mat3x2 m32; 6617a3babSopenharmony_ci 7617a3babSopenharmony_ciconst mat2x4 m24 = mat2x4(1.0, 2.0, 8617a3babSopenharmony_ci 3.0, 4.0, 9617a3babSopenharmony_ci 3.0, 4.0, 10617a3babSopenharmony_ci 3.0, 4.0, 5.0); // ERROR, too many arguments 11617a3babSopenharmony_ci 12617a3babSopenharmony_civoid main() 13617a3babSopenharmony_ci{ 14617a3babSopenharmony_ci mat2x3 m23; 15617a3babSopenharmony_ci vec3 a, b; 16617a3babSopenharmony_ci 17617a3babSopenharmony_ci a = v3 * m23; // ERROR, type mismatch 18617a3babSopenharmony_ci b = m32 * v3; // ERROR, type mismatch 19617a3babSopenharmony_ci m23.xy; // ERROR, can't use . 20617a3babSopenharmony_ci 21617a3babSopenharmony_ci gl_Position = vec4(m23 * m32 * v3, m24[2][4]); // ERROR, 2 and 4 are out of range 22617a3babSopenharmony_ci m23 *= m23; // ERROR, right side needs to be square 23617a3babSopenharmony_ci m23 *= m32; // ERROR, left columns must match right rows 24617a3babSopenharmony_ci} 25