#include <metal_stdlib>
#include <simd/simd.h>

using namespace metal;

struct s1
{
    int a;
};

struct s2
{
    s1 b;
};

struct s1_1
{
    int a;
};

struct s2_1
{
    s1_1 b;
};

struct dstbuffer
{
    s2_1 test[1];
};

constant uint3 gl_WorkGroupSize [[maybe_unused]] = uint3(1u);

kernel void main0(device dstbuffer& _19 [[buffer(0)]])
{
    s2 testVal;
    testVal.b.a = 0;
    _19.test[0].b.a = testVal.b.a;
}