From: Ian Romanick Date: Tue, 8 Nov 2016 19:14:49 +0000 (-0800) Subject: glsl: Parse 0 as a preprocessor INTCONSTANT X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c8c46641af43edd106528ac0293db5aa02a2364e;p=mesa.git glsl: Parse 0 as a preprocessor INTCONSTANT This allows a more reasonable error message for '#version 0' of 0:1(10): error: GLSL 0.00 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES instead of 0:1(10): error: syntax error, unexpected $undefined, expecting INTCONSTANT Signed-off-by: Ian Romanick Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97420 Reviewed-by: Nicolai Hähnle Cc: mesa-stable@lists.freedesktop.org Cc: Juan A. Suarez Romero Cc: Karol Herbst --- diff --git a/src/compiler/glsl/glsl_lexer.ll b/src/compiler/glsl/glsl_lexer.ll index b473af7845c..0e722cbfba3 100644 --- a/src/compiler/glsl/glsl_lexer.ll +++ b/src/compiler/glsl/glsl_lexer.ll @@ -253,6 +253,10 @@ HASH ^{SPC}#{SPC} yylval->n = strtol(yytext, NULL, 10); return INTCONSTANT; } +0 { + yylval->n = 0; + return INTCONSTANT; + } \n { BEGIN 0; yylineno++; yycolumn = 0; return EOL; } . { return yytext[0]; }