Module: Mesa
Branch: master
Commit: 93e719ba4da7c45cdddd276060acbcc1a4edceda
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=93e719ba4da7c45cdddd276060acbcc1a4edceda

Author: Carl Worth <[email protected]>
Date:   Mon Nov 26 15:00:05 2012 -0800

glcpp: Make undefined macros illegal in #if and #elif for GLES3

Simply emitting a nicely-formatted error message if any undefined macro is
encountered in a parser context expecting an expression.

With this commit, the following piglit test now passes:

        spec/glsl-es-3.00/compiler/undefined-macro.vert

Reviewed-by: Matt Turner <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>

---

 src/glsl/glcpp/glcpp-parse.y |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index 76dcd42..8fba923 100644
--- a/src/glsl/glcpp/glcpp-parse.y
+++ b/src/glsl/glcpp/glcpp-parse.y
@@ -363,6 +363,8 @@ integer_constant:
 expression:
        integer_constant
 |      IDENTIFIER {
+               if (parser->is_gles)
+                       glcpp_error(& @1, parser, "undefined macro %s in 
expression (illegal in GLES)", $1);
                $$ = 0;
        }
 |      expression OR expression {

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to