1layout(local_size_x = 1) in; 2 3layout(set = 0, binding = 1, rgba32f) writeonly texture2D rgba32fTex; 4layout(set = 0, binding = 2, r32f) writeonly texture2D r32fTex; 5layout(set = 0, binding = 3, rgba8) writeonly texture2D rgba8Tex; 6 7void takes_rgba32f(layout(rgba32f) writeonly texture2D tex) {} 8void takes_r32f (layout(r32f) writeonly texture2D tex) {} 9void takes_rgba8 (layout(rgba8) writeonly texture2D tex) {} 10 11void test() { 12 takes_rgba32f(rgba32fTex); 13 takes_rgba32f(r32fTex); 14 takes_rgba32f(rgba8Tex); 15 16 takes_r32f(rgba32fTex); 17 takes_r32f(r32fTex); 18 takes_r32f(rgba8Tex); 19 20 takes_rgba8(rgba32fTex); 21 takes_rgba8(r32fTex); 22 takes_rgba8(rgba8Tex); 23} 24 25/*%%* 26expected argument of type 'layout (rgba32f) writeonlyTexture2D' 27expected argument of type 'layout (rgba32f) writeonlyTexture2D' 28expected argument of type 'layout (r32f) writeonlyTexture2D' 29expected argument of type 'layout (r32f) writeonlyTexture2D' 30expected argument of type 'layout (rgba8) writeonlyTexture2D' 31expected argument of type 'layout (rgba8) writeonlyTexture2D' 32*%%*/ 33