John Kessenich | f0fdc53 | 2013-02-04 23:54:58 +0000 | [diff] [blame] | 1 | #version 120 |
| 2 | |
| 3 | attribute vec3 v3; |
| 4 | |
| 5 | uniform mat3x2 m32; |
| 6 | |
| 7 | const mat2x4 m24 = mat2x4(1.0, 2.0, |
| 8 | 3.0, 4.0, |
| 9 | 3.0, 4.0, |
John Kessenich | 23bdb29 | 2013-08-27 05:57:15 +0000 | [diff] [blame] | 10 | 3.0, 4.0, 5.0); // ERROR, too many arguments |
John Kessenich | f0fdc53 | 2013-02-04 23:54:58 +0000 | [diff] [blame] | 11 | |
| 12 | void main() |
| 13 | { |
| 14 | mat2x3 m23; |
| 15 | vec3 a, b; |
| 16 | |
John Kessenich | 23bdb29 | 2013-08-27 05:57:15 +0000 | [diff] [blame] | 17 | a = v3 * m23; // ERROR, type mismatch |
| 18 | b = m32 * v3; // ERROR, type mismatch |
| 19 | m23.xy; // ERROR, can't use . |
John Kessenich | f0fdc53 | 2013-02-04 23:54:58 +0000 | [diff] [blame] | 20 | |
John Kessenich | 23bdb29 | 2013-08-27 05:57:15 +0000 | [diff] [blame] | 21 | gl_Position = vec4(m23 * m32 * v3, m24[2][4]); // ERROR, 2 and 4 are out of range |
John Kessenich | f0fdc53 | 2013-02-04 23:54:58 +0000 | [diff] [blame] | 22 | } |