SKIP: FAILED

#version 310 es
precision mediump float;

struct Inner {
  float f;
};
struct S {
  Inner inner;
};

layout(binding = 0) buffer S_1 {
  Inner inner;
} tint_symbol;
layout(binding = 1) buffer S_2 {
  Inner inner;
} tint_symbol_1;

layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void tint_symbol_2() {
  tint_symbol_1 = tint_symbol;
  return;
}
void main() {
  tint_symbol_2();
}


Error parsing GLSL shader:
ERROR: 0:20: 'assign' :  cannot convert from 'layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer structure{ global mediump float f} inner}' to 'layout( binding=1 column_major shared) buffer block{layout( column_major shared) buffer structure{ global mediump float f} inner}'
ERROR: 0:20: '' : compilation terminated 
ERROR: 2 compilation errors.  No code generated.



