1#version 450
2
3#extension GL_EXT_shader_explicit_arithmetic_types_int64 : enable
4#extension GL_EXT_buffer_reference : enable
5#extension GL_EXT_scalar_block_layout : enable
6
7layout(buffer_reference) buffer T1 {
8    int x;
9    bool y;
10};
11layout(buffer_reference) buffer T2 {
12    int x;
13};
14
15const int s = int(uint64_t(T1(T2(uint64_t(3)))));
16int x[s];
17const uint64_t t = uint64_t(true ? T2(uint64_t(10)) : T2(uint64_t(11)));
18
19void main()
20{
21    T1 a = T1(uint64_t(4)), b = T1(uint64_t(5));
22    T1 c = true ? a : b;
23    T1 d = (a,b);
24    T1 e = true ? T1(uint64_t(6)) : T1(uint64_t(7));
25    T1 f = a.y ? T1(uint64_t(8)) : T1(uint64_t(9));
26}
27