SKIP: FAILED #include using namespace metal; struct tint_padded_array_element { /* 0x0000 */ float el; /* 0x0004 */ int8_t tint_pad[12]; }; struct tint_array_wrapper { /* 0x0000 */ tint_padded_array_element arr[2]; }; struct buf0 { /* 0x0000 */ tint_array_wrapper x_GLF_uniform_float_values; }; struct tint_padded_array_element_1 { /* 0x0000 */ int el; /* 0x0004 */ int8_t tint_pad_1[12]; }; struct tint_array_wrapper_1 { /* 0x0000 */ tint_padded_array_element_1 arr[1]; }; struct buf1 { /* 0x0000 */ tint_array_wrapper_1 x_GLF_uniform_int_values; }; struct main_out { float4 x_GLF_color_1; }; struct tint_symbol_1 { float4 x_GLF_color_1 [[color(0)]]; }; void main_1(constant buf0& x_6, constant buf1& x_8, thread float4* const tint_symbol_4) { float a = 0.0f; float const x_30 = x_6.x_GLF_uniform_float_values.arr[0].el; a = (x_30 % 1.0f); float const x_32 = a; float const x_34 = x_6.x_GLF_uniform_float_values.arr[0].el; if ((x_32 == x_34)) { int const x_40 = x_8.x_GLF_uniform_int_values.arr[0].el; float const x_42 = a; float const x_43 = a; int const x_45 = x_8.x_GLF_uniform_int_values.arr[0].el; *(tint_symbol_4) = float4(float(x_40), x_42, x_43, float(x_45)); } else { float const x_48 = a; *(tint_symbol_4) = float4(x_48, x_48, x_48, x_48); } return; } fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]], constant buf1& x_8 [[buffer(1)]]) { thread float4 tint_symbol_5 = 0.0f; main_1(x_6, x_8, &(tint_symbol_5)); main_out const tint_symbol_2 = {.x_GLF_color_1=tint_symbol_5}; tint_symbol_1 const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_2.x_GLF_color_1}; return tint_symbol_3; } T:\tmp\us0.0.metal:34:13: error: invalid operands to binary expression ('const float' and 'float') a = (x_30 % 1.0f); ~~~~ ^ ~~~~ 1 error generated.