1#version 450
2
3#extension GL_EXT_buffer_reference : enable
4
5layout(buffer_reference, std430) buffer blockType {
6    layout(offset = 0)  int a;
7    layout(offset = 4)  int b;
8    layout(offset = 8)  int c;
9    layout(offset = 12) int d;
10    layout(offset = 16) int e;
11};
12
13layout(std430) buffer t2 {
14    blockType f;
15    blockType g;
16} t;
17
18layout(std430, buffer_reference) buffer T2 { int x; };
19layout(std430, buffer_reference) buffer T1 { int x; };
20
21struct Blah {
22    T1 t1;
23    T2 t2;
24};
25
26layout(set=0, binding=0) buffer T3 {
27  Blah Bindings[];
28} t3;
29
30void main() {
31    t3.Bindings[0] = t3.Bindings[1];
32}
33