The compiler is not stopping after that line (280.26 drivers), he just generates a warning. (btw, on older drivers the compiler generates an error). So, I can use some features of GLSL 4.20 on GLSL 3.30 hardware. For example: scalar swizzle operations (4.20 feature) are available after I define my shader version to be 4.20 (even if glGetString return shader version 3.30)
The compiler is not stopping after that line (280.26 drivers), he just generates a warning. (btw, on older drivers the compiler generates an error).
Then your driver needs to be fixed. The specification is quite clear on this: if you provide a GLSL version that is higher than what the driver supports (and an OpenGL 3.3 implementation cannot support 4.20), then this is an error.
The proper way to use something like shading_language_packing with 3.30 is to use it as an extension. You use version 3.30, and then enable the shading_language_packing extension.