OSDN Git Service

glsl: correctly validate component layout qualifier for dvec{3,4}
authorAndres Gomez <agomez@igalia.com>
Thu, 20 Dec 2018 01:09:57 +0000 (03:09 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Mon, 25 Mar 2019 16:15:02 +0000 (16:15 +0000)
commitdb517e336c82721acb01d5a2b8580b345533e2b5
tree9bd799a3e3f95a88031eef825986fa521994d8a0
parentf9160aa98b529de77133780a508afd1ce91f0072
glsl: correctly validate component layout qualifier for dvec{3,4}

From page 62 (page 68 of the PDF) of the GLSL 4.50 v.7 spec:

  " A dvec3 or dvec4 can only be declared without specifying a
    component."

Therefore, using the "component" qualifier with a dvec3 or dvec4
should result in a compiling error.

v2: enhance the error message (Timothy).

Fixes: 94438578d21 ("glsl: validate and store component layout qualifier in GLSL IR")
Cc: Timothy Arceri <tarceri@itsqueeze.com>
Cc: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
(cherry picked from commit a96093136bddfe17661f1de54228fe4b5618ba8a)
src/compiler/glsl/ast_to_hir.cpp