Matrix layout qualifiers are valid for non-matrices
Matrix layout qualifiers are valid for non-matrices

Uniform block members may be structs containing matrices, and there's
no explicit mention in the spec that the matrix qualifiers would only
be valid for matrix fields. Only generate a warning when an extraneous
matrix layout qualifier is used.

TEST=dEQP-GLES3.functional.shaders.*layout* (all pass with this patch)
BUG=angleproject:1058

Change-Id: Ifb2f2392d84100d997cc2d68fd55e9ad17a17cea
Reviewed-on: https://chromium-review.googlesource.com/284112
Reviewed-by: Zhenyao Mo <655bdf1d95ff956cd68886dd9e86ee5e987c9dbb@chromium.org>
Tested-by: Olli Etuaho <38ae6c0e2772a20e8e989f80cb8c99d274e44242@nvidia.com>

larsbergstrom/angle,csa7mdm/angle,larsbergstrom/angle,ecoal95/angle,csa7mdm/angle,crezefire/angle,larsbergstrom/angle,ppy/angle,crezefire/angle,mybios/angle,crezefire/angle,MSOpenTech/angle,mlfarrell/angle,ecoal95/angle,domokit/waterfall,MSOpenTech/angle,bsergean/angle,ecoal95/angle,mikolalysenko/angle,mikolalysenko/angle,ecoal95/angle,csa7mdm/angle,mlfarrell/angle,vvuk/angle,bsergean/angle,vvuk/angle,mikolalysenko/angle,mybios/angle,MSOpenTech/angle,csa7mdm/angle,mybios/angle,domokit/waterfall,vvuk/angle,vvuk/angle,mybios/angle,ecoal95/angle,bsergean/angle,bsergean/angle,crezefire/angle,ppy/angle,larsbergstrom/angle,ppy/angle,mikolalysenko/angle,mlfarrell/angle,ppy/angle,MSOpenTech/angle,mlfarrell/angle