gl_ClipDistance does not work in case it has been initialized by an array constructor

Starting with driver version 526.67 of the production branch (GPU: Quadro P2000)we noticed that glClipDistance will always be zero in case we set the values in the following way


layout(std140, binding = 7) uniform ClipPlaneData
{
vec4[8] clipPlanes;
int nUsedPlanes;
};

out gl_PerVertex {
vec4 gl_Position;
float gl_PointSize;
float gl_ClipDistance[8];
};

void main()
{

gl_ClipDistance =float[8](0,0,0,0,0,0,0,0);
for(int planeIdx = 0; planeIdx < nUsedPlanes; ++planeIdx)
{
gl_ClipDistance[planeIdx] = dot(viewPosition,clipPlanes[planeIdx]);
}

}

In case we do not use the array constructor everything is fine. The initialisation was in use since 2020 and worked until now. We did not notice any objection against initialization in the spec of gl_ClipDistance and it works in case we initialize the array with a for loop. The init has been used to fix issues with some other drivers which were unhappy about uninitialized memory of disabled clip planes.