1cb93a386Sopenharmony_ci#version 400 2cb93a386Sopenharmony_ciout vec4 sk_FragColor; 3cb93a386Sopenharmony_ciuniform vec4 colorGreen; 4cb93a386Sopenharmony_ciuniform vec4 colorRed; 5cb93a386Sopenharmony_cibool switch_fallthrough_twice_bi(int value) { 6cb93a386Sopenharmony_ci bool ok = false; 7cb93a386Sopenharmony_ci int _tmpSwitchValue1 = value, _tmpSwitchFallthrough0 = 0; 8cb93a386Sopenharmony_ci for (int _tmpSwitchLoop2 = 0; _tmpSwitchLoop2 < 1; _tmpSwitchLoop2++) { 9cb93a386Sopenharmony_ci if ((_tmpSwitchValue1 == 0)) { 10cb93a386Sopenharmony_ci break; 11cb93a386Sopenharmony_ci _tmpSwitchFallthrough0 = 1; 12cb93a386Sopenharmony_ci } 13cb93a386Sopenharmony_ci if ((_tmpSwitchFallthrough0 > 0) || (_tmpSwitchValue1 == 1)) { 14cb93a386Sopenharmony_ci { 15cb93a386Sopenharmony_ci } 16cb93a386Sopenharmony_ci _tmpSwitchFallthrough0 = 1; 17cb93a386Sopenharmony_ci } 18cb93a386Sopenharmony_ci if ((_tmpSwitchFallthrough0 > 0) || (_tmpSwitchValue1 == 2)) { 19cb93a386Sopenharmony_ci { 20cb93a386Sopenharmony_ci } 21cb93a386Sopenharmony_ci _tmpSwitchFallthrough0 = 1; 22cb93a386Sopenharmony_ci } 23cb93a386Sopenharmony_ci if ((_tmpSwitchFallthrough0 > 0) || (_tmpSwitchValue1 == 3)) { 24cb93a386Sopenharmony_ci ok = true; 25cb93a386Sopenharmony_ci break; 26cb93a386Sopenharmony_ci _tmpSwitchFallthrough0 = 1; 27cb93a386Sopenharmony_ci } 28cb93a386Sopenharmony_ci break; 29cb93a386Sopenharmony_ci } 30cb93a386Sopenharmony_ci return ok; 31cb93a386Sopenharmony_ci} 32cb93a386Sopenharmony_civec4 main() { 33cb93a386Sopenharmony_ci int x = int(colorGreen.y); 34cb93a386Sopenharmony_ci bool _0_ok = false; 35cb93a386Sopenharmony_ci int _tmpSwitchValue4 = x, _tmpSwitchFallthrough3 = 0; 36cb93a386Sopenharmony_ci for (int _tmpSwitchLoop5 = 0; _tmpSwitchLoop5 < 1; _tmpSwitchLoop5++) { 37cb93a386Sopenharmony_ci if ((_tmpSwitchValue4 == 2)) { 38cb93a386Sopenharmony_ci break; 39cb93a386Sopenharmony_ci _tmpSwitchFallthrough3 = 1; 40cb93a386Sopenharmony_ci } 41cb93a386Sopenharmony_ci if ((_tmpSwitchFallthrough3 > 0) || (_tmpSwitchValue4 == 1)) { 42cb93a386Sopenharmony_ci { 43cb93a386Sopenharmony_ci } 44cb93a386Sopenharmony_ci _tmpSwitchFallthrough3 = 1; 45cb93a386Sopenharmony_ci } 46cb93a386Sopenharmony_ci if ((_tmpSwitchFallthrough3 > 0) || (_tmpSwitchValue4 == 0)) { 47cb93a386Sopenharmony_ci _0_ok = true; 48cb93a386Sopenharmony_ci break; 49cb93a386Sopenharmony_ci _tmpSwitchFallthrough3 = 1; 50cb93a386Sopenharmony_ci } 51cb93a386Sopenharmony_ci break; 52cb93a386Sopenharmony_ci } 53cb93a386Sopenharmony_ci return _0_ok && switch_fallthrough_twice_bi(x) ? colorGreen : colorRed; 54cb93a386Sopenharmony_ci} 55