   glsl error c5025 lvalue in array access too complex
  hello guys,i can't compile my glsl geometry shader, because i get the error c5025 lvalue in array access too complex. i did some search but found nothing.the problematic line is a simple subtraction of two vectors:vec3 lineDirection=lineEnd-lineOrigin;which is inside a for loopi'm feeling that the gpu program doesn't support large for loop. i tried to comment all the lines after the problematic one, so that the for loop becomes simpler, the code then compiled. how should i solve this problem? and what is the reason for this error?my geometry shader should be correct:for(int i=0;i<12;i++){isIntersect=false;int a=lines[i*2+1];int b=lines[i*2];vec3 lineOrigin=gl_PositionIn.xyz;vec3 lineEnd=gl_PositionIn[a].xyz;vec3 lineDirection=lineEnd-lineOrigin;  //this is the problematic line//if i comment all the rest lines, the code compilesvec3 po=vec3(0.0,0.0,0.0);float k=dot(planeNormal,lineDirection);if( (k > -epsilon) && (k < epsilon)){isIntersect=false;}else{float r=(planeOffset-dot(planeNormal,lineOrigin));if(r<lineLength && r>0){isIntersect=true;po=lineOrigin+lineDirection*r/k;}else{isIntersect=false;}}if(isIntersect){pointList[pointCount]=po;pointCount++;}}