blob: a871a953499c7a52d431d1d4f1643af7dd55557e [file] [log] [blame]
### Compilation failed:
error: 10: variables of type 'shader' must be uniform
shader s3;
^^^^^^^^^
error: 11: variables of type 'shader' must be uniform
in shader s4;
^^^^^^^^^^^^
error: 11: 'in' is not permitted here
in shader s4;
^^
error: 13: opaque type 'shader' is not permitted in a struct
struct S { shader sh; };
^^^^^^^^^
error: 14: variables of type 'S' may not be uniform
uniform S s5;
^^^^^^^^^^^^
error: 15: opaque type 'shader' may not be used in an array
uniform shader s6[2];
^^^^^^^^^^^^^^^^^^^^
error: 18: type mismatch: '==' cannot operate on 'shader', 'shader'
bool equality() { return s1 == s2; }
^^^^^^^^
error: 19: type mismatch: '<' cannot operate on 'shader', 'shader'
bool comparison() { return s1 < s2; }
^^^^^^^
error: 20: '!' cannot operate on 'shader'
bool unary_not() { return !s1; }
^^^
error: 21: '-' cannot operate on 'shader'
void unary_neg() { -s1; }
^^^
error: 22: '+' cannot operate on 'shader'
void unary_pos() { +s1; }
^^^
error: 23: type mismatch: '*' cannot operate on 'shader', 'shader'
void arithmetic() { s1 * s2; }
^^^^^^^
error: 24: expected array, but found 'shader'
void index() { s1[0]; }
^^
error: 25: type 'shader' has no method named 'xyz'
void swizzle() { s1.xyz; }
^^^^^^
error: 26: cannot modify immutable variable 's1'
void assignment() { s1 = s2; }
^^
error: 27: variables of type 'shader' must be global
half4 local() { shader s; return s.eval(xy); }
^^^^^^^^
error: 27: variables of type 'shader' must be uniform
half4 local() { shader s; return s.eval(xy); }
^^^^^^^^
error: 28: parameters of type 'shader' not allowed
half4 parameter(shader s) { return s.eval(xy); }
^^^^^^^^
error: 28: unknown identifier 's'
half4 parameter(shader s) { return s.eval(xy); }
^
error: 29: functions may not return opaque type 'shader'
shader returned() { return s1; }
^^^^^^^^^^^^^^^^^
error: 30: cannot construct 'shader'
half4 constructed() { return shader(s1).eval(xy); }
^^^^^^^^^^
error: 31: ternary expression of opaque type 'shader' not allowed
half4 expression(bool b) { return (b ? s1 : s2).eval(xy); }
^^^^^^^^^^^
error: 32: expected '(' to begin method call
half4 dangling_eval() { s1.eval; }
^
error: 32: function 'dangling_eval' can exit without returning a value
half4 dangling_eval() { s1.eval; }
^^^^^^^^^^^^
24 errors