1cb93a386Sopenharmony_ciuniform half4 colorGreen; 2cb93a386Sopenharmony_ci 3cb93a386Sopenharmony_ci// GLSL 4.1 and below enforce that qualifiers must occur in a strict order. (See "Order of 4cb93a386Sopenharmony_ci// Qualifiers" in the GLSL documentation.) GLSL 4.2 and above no longer enforce order; SkSL also 5cb93a386Sopenharmony_ci// does not. However, SkSL will always emit qualifiers in the order expected by GLSL 4.1. 6cb93a386Sopenharmony_ci 7cb93a386Sopenharmony_ci// These qualifiers are reversed from the expected order, but SkSL should compile and run anyway. 8cb93a386Sopenharmony_cinoinline void const_after_in(in const vec2 x) {} 9cb93a386Sopenharmony_cinoinline void inout_after_high_precision(highp inout vec2 x) {} 10cb93a386Sopenharmony_cinoinline void out_after_high_precision(highp out vec2 x) {} 11cb93a386Sopenharmony_ci 12cb93a386Sopenharmony_civec4 main(vec2 coords) { 13cb93a386Sopenharmony_ci const_after_in(coords); 14cb93a386Sopenharmony_ci inout_after_high_precision(coords); 15cb93a386Sopenharmony_ci out_after_high_precision(coords); 16cb93a386Sopenharmony_ci 17cb93a386Sopenharmony_ci return colorGreen; 18cb93a386Sopenharmony_ci} 19