fo here is assigned
// a different internal unique ID from the struct info in vertex shader.
struct extra {
  vec4 p;
};

struct info {
  vec4 pos;
  vec4 color;
};

uniform info uni;
void main()
{
    extra my;
    my.p = uni.color;
    gl_FragColor = my.p;
}
</script>
<script id="vertexShaderStructFieldName" type="text/something-not-javascript">
// Structures must have the same name, sequence of type names, and
// type definitions, and field names to be considered the same type.
// GLSL 1.017 4.2.4
precis