4 // require_extensions: GL_ARB_shader_subroutine
8 #extension GL_ARB_shader_subroutine: require
10 subroutine void func_type();
12 subroutine (func_type) void impl() {}
14 subroutine uniform func_type f[4];
18 /* Arrays of subroutine uniforms may be indexed with
19 * dynamically uniform expressions. GLSL 4.00-4.30
20 * leave this underspecified as 'dynamically indexed'
21 * but GLSL 4.40 clarifies that the intent all along
22 * was to require the indexing expression to be
23 * dynamically uniform.