glsl: fix needs_lowering() call in varying packing pass
Here we remove the outer arrays on geom and tess shaders where needed. Without this the pass can sometimes attempt to pack a varying on only one side of the shader interface where it is not actually needed. The result can be mismatching varying types.
Fixes: d6b92028 ("glsl: disable varying packing when its not safe")