Is the shader really incorrect? I notice that it declares "#version 120" in the first line, and the GLSL 1.2 spec explicitly states that there is no line-continuation character (http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf - section 3.1... "There is no line continuation character."). Yes, this has changed in later GLSL-versions (the change happend between the 4.10 spec and the 4.20 spec), so I believe the line-continuation parsing should only be enabled in the presenece of a "#version NNN" where NNN >= 420.