Mesa (master): glsl/glcpp: Fix NULL directives when followed by a single-line comment

Ian Romanick idr at kemper.freedesktop.org
Thu Aug 7 23:08:46 UTC 2014


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

Author: Carl Worth <cworth at cworth.org>
Date:   Tue Jul  1 17:58:37 2014 -0700

glsl/glcpp: Fix NULL directives when followed by a single-line comment

This is the fix for the following line:

	#  // comment to ignore here

According to the translation-phase rules, the comment should be removed before
the preprocessor looks to interpret the null directive.

So in our implementation we must explicitly look for single-line comments in
the <HASH> start condition as well.

This commit fixes the following Khronos GLES3 CTS tests:

	null_directive_vertex
	null_directive_fragment

Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/glsl/glcpp/glcpp-lex.l |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/glsl/glcpp/glcpp-lex.l b/src/glsl/glcpp/glcpp-lex.l
index 2cfe203..2b92fd3 100644
--- a/src/glsl/glcpp/glcpp-lex.l
+++ b/src/glsl/glcpp/glcpp-lex.l
@@ -250,7 +250,7 @@ HEXADECIMAL_INTEGER	0[xX][0-9a-fA-F]+[uU]?
 	}
 
 	/* Single-line comments */
-<INITIAL,DEFINE>"//"[^\r\n]* {
+<INITIAL,DEFINE,HASH>"//"[^\r\n]* {
 }
 
 	/* Multi-line comments */




More information about the mesa-commit mailing list