   Geometry Shader Error
My shader worked perfectly before recent Nvidia Update. Now I'm getting the error "ARB_separate_shader_objects requires built-in block gl_PerVertex to be redeclared before accesing its member." I'm new to GLSL shaders, and I just don't know what to do...Any help is greatly appreciated. If I add:out gl_PerVertex{  vec4 gl_Position;}; It compiles with no errors but nothing is drawn. //geom#version 430#define POSITION0#define GEOMUV 1#define INDEX  2#define FRAG_COLOR0layout(points) in; // x, y, width, heightlayout(triangle_strip, max_vertices = 4) out;uniform mat4 MVP;in Data{    ivec4 pos; // x, y, width, height    vec2 UV;    flat int Index;} vdata[1];out Data{    vec2 UV;    flat int Index;} gdata;void main() {  int x = vdata[0].pos.x;  int y = vdata[0].pos.y;  int widthx  = vdata[0].pos.z + vdata[0].pos.x;  int heighty = vdata[0].pos.w + vdata[0].pos.y;  // bottom left quad  gl_Position   = MVP * vec4(x, heighty, 0, 1);  gdata.UV = vec2(0.0, 0.0);  gdata.Index   = vdata[0].Index;  EmitVertex();  // bottom right quad  gl_Position   = MVP * vec4(widthx, heighty, 0, 1);  gdata.UV = vec2(1.0, 0.0);  gdata.Index   = vdata[0].Index;  EmitVertex();  // top right quad  gl_Position   = MVP * vec4(x, y, 0, 1);  gdata.UV = vec2(0.0, 1.0);  gdata.Index   = vdata[0].Index;  EmitVertex(); // top left quad  gl_Position   = MVP * vec4(widthx, y, 0, 1);  gdata.UV = vec2(1.0, 1.0);  gdata.Index   = vdata[0].Index;  EmitVertex();  EndPrimitive();} 