Mesa (master): glsl: Relax GLSL 1.10 float suffix error to a warning.

Matt Turner mattst88 at kemper.freedesktop.org
Thu Apr 21 17:32:21 UTC 2016


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

Author: Matt Turner <mattst88 at gmail.com>
Date:   Wed Apr 20 12:29:23 2016 -0700

glsl: Relax GLSL 1.10 float suffix error to a warning.

Float suffixes are allowed in all subsequent GLSL specifications, and
it's obvious what the user meant if they specify one. Accept it with a
warning to avoid breaking applications, like Planeshift (although it
looks like between 0.6.1 and 0.6.3 they might have removed the suffixes
from their shaders).

Reviewed-by: Lars Hamre <chemecse at gmail.com>
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/compiler/glsl/glsl_lexer.ll | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/compiler/glsl/glsl_lexer.ll b/src/compiler/glsl/glsl_lexer.ll
index 6b1ef17..8a562cb 100644
--- a/src/compiler/glsl/glsl_lexer.ll
+++ b/src/compiler/glsl/glsl_lexer.ll
@@ -476,8 +476,8 @@ layout		{
 			    char suffix = yytext[strlen(yytext) - 1];
 			    if (!state->is_version(120, 300) &&
 			        (suffix == 'f' || suffix == 'F')) {
-			        _mesa_glsl_error(yylloc, state,
-			                         "Float suffixes are invalid in GLSL 1.10");
+			        _mesa_glsl_warning(yylloc, state,
+			                           "Float suffixes are invalid in GLSL 1.10");
 			    }
 			    yylval->real = _mesa_strtof(yytext, NULL);
 			    return FLOATCONSTANT;




More information about the mesa-commit mailing list