//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj #pragma warning(disable:30856) interface IFoo { T getFirst(); } __generic> extension T : IFoo { S getFirst() { return this[0]; } } T getFirstOuter(IFoo arr) { return arr.getFirst(); } //TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer RWStructuredBuffer outputBuffer; [numthreads(1,1,1)] void computeMain() { int arr[] = {1,2,3}; // CHECK: 1 outputBuffer[0] = getFirstOuter(arr); }