Let's do this change, but let's also be clear that this is not a strictly necessary change, but rather one made for clarity and ease of development.
If it can't be fixed at a lower level (eg. within the shader compiler), I disagree that it's not strictly a necessary change. Interoperability is a top priority for all web APIs, and it should be for WebGL as much as possible too.
Sorry to belabor the point, but it's an important one. If UAs can't implement the spec as written, then the spec needs to change.