struct S { float f; }; void not_a_field() { S s; s.missing = 123; } void not_a_function() { S s; s.f(); } void not_a_bvec() { S s; s.f = bool3(true); } void not_a_struct() { S s; s.f.missing; } void not_an_array() { S s; s.f[0]; } /*%%* type 'S' does not have a field named 'missing' not a function type mismatch: '=' cannot operate on 'float', 'bool3' invalid swizzle component 'm' expected array, but found 'float' *%%*/