| layout(local_size_x = 1) in; |
| |
| layout(set = 0, binding = 1, rgba32f) writeonly texture2D rgba32fTex; |
| layout(set = 0, binding = 2, r32f) writeonly texture2D r32fTex; |
| layout(set = 0, binding = 3, rgba8) writeonly texture2D rgba8Tex; |
| |
| void takes_rgba32f(layout(rgba32f) writeonly texture2D tex) {} |
| void takes_r32f (layout(r32f) writeonly texture2D tex) {} |
| void takes_rgba8 (layout(rgba8) writeonly texture2D tex) {} |
| |
| void test() { |
| takes_rgba32f(rgba32fTex); |
| takes_rgba32f(r32fTex); |
| takes_rgba32f(rgba8Tex); |
| |
| takes_r32f(rgba32fTex); |
| takes_r32f(r32fTex); |
| takes_r32f(rgba8Tex); |
| |
| takes_rgba8(rgba32fTex); |
| takes_rgba8(r32fTex); |
| takes_rgba8(rgba8Tex); |
| } |
| |
| /*%%* |
| expected argument of type 'layout (rgba32f) writeonlyTexture2D' |
| expected argument of type 'layout (rgba32f) writeonlyTexture2D' |
| expected argument of type 'layout (r32f) writeonlyTexture2D' |
| expected argument of type 'layout (r32f) writeonlyTexture2D' |
| expected argument of type 'layout (rgba8) writeonlyTexture2D' |
| expected argument of type 'layout (rgba8) writeonlyTexture2D' |
| *%%*/ |