#include using namespace metal; struct FragmentInputs0 { float4 position; int loc0; }; struct FragmentInputs1 { float4 loc3; uint sample_mask; }; struct tint_symbol_2 { int loc0 [[user(locn0)]] [[flat]]; uint loc1 [[user(locn1)]] [[flat]]; float loc2 [[user(locn2)]]; float4 loc3 [[user(locn3)]]; }; void tint_symbol_inner(FragmentInputs0 inputs0, bool front_facing, uint loc1, uint sample_index, FragmentInputs1 inputs1, float loc2) { if (front_facing) { float4 const foo = inputs0.position; uint const bar = (sample_index + inputs1.sample_mask); int const i = inputs0.loc0; uint const u = loc1; float const f = loc2; float4 const v = inputs1.loc3; } } fragment void tint_symbol(float4 position [[position]], bool front_facing [[front_facing]], uint sample_index [[sample_id]], uint sample_mask [[sample_mask]], tint_symbol_2 tint_symbol_1 [[stage_in]]) { FragmentInputs0 const tint_symbol_3 = {.position=position, .loc0=tint_symbol_1.loc0}; FragmentInputs1 const tint_symbol_4 = {.loc3=tint_symbol_1.loc3, .sample_mask=sample_mask}; tint_symbol_inner(tint_symbol_3, front_facing, tint_symbol_1.loc1, sample_index, tint_symbol_4, tint_symbol_1.loc2); return; }