Why a nVidia GLSL compiler successfully compiled the wrong pixel shader?

precision lowp float;

uniform sampler2D tex;
varying vec2 tex_coord;

void main()
    gl_FragColor = texture2D(tex, tex_coord);
  1. If a #version​ directive does not appear at the top, then it assumes 1.10
  2. The minimum GLSL version that supports the precision qualifiers is 1.30.

ATI Radeon HD5670 doesn’t compile this shader:
ERROR: 0:1: error(#263) “Precision qualifier” is not supported prior to GLSL version 1.30
ERROR: error(#273) 1 compilation errors. No code generated

Why nVidia doesn’t keep glsl standart ?