//TEST:SIMPLE(filecheck=CHK): -target spirv -entry computeMain //TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer RWStructuredBuffer outputBuffer; groupshared float4 gsVar; __generic struct MyContainer { __generic void store(__ref vector v) { v[0] = TYPE2(0); v[1] = TYPE2(1); v[2] = TYPE2(2); v[3] = TYPE2(3); } }; [Shader("compute")] [NumThreads(1, 1, 1)] void computeMain(int3 dispatchThreadID : SV_DispatchThreadID) { MyContainer obj; obj.store(gsVar); // CHK-NOT:warning 41017: outputBuffer[0] = gsVar.x; }