diff options
author | Carl Worth <[email protected]> | 2010-07-20 13:16:17 -0700 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2010-07-20 17:01:11 -0700 |
commit | 17f9beb6c313b41ca08984add7b76ecb84a7339e (patch) | |
tree | aaea6e59801dc4f1fd7ffed1fb7a3cb35d9412ed | |
parent | 61ebc01dfecda0963a184e881ea966e2d92f0519 (diff) |
glcpp: Support #if(expression) with no intervening space.
And add a test case to ensure that this works.
-rw-r--r-- | src/glsl/glcpp/glcpp-lex.l | 2 | ||||
-rw-r--r-- | src/glsl/glcpp/tests/066-if-nospace-expression.c | 3 | ||||
-rw-r--r-- | src/glsl/glcpp/tests/066-if-nospace-expression.c.expected | 4 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/glsl/glcpp/glcpp-lex.l b/src/glsl/glcpp/glcpp-lex.l index 53e85556c16..a81c8f92c14 100644 --- a/src/glsl/glcpp/glcpp-lex.l +++ b/src/glsl/glcpp/glcpp-lex.l @@ -99,7 +99,7 @@ HEXADECIMAL_INTEGER 0[xX][0-9a-fA-F]+[uU]? return HASH_IFNDEF; } -{HASH}if{HSPACE}/.*\n { +{HASH}if{HSPACE}*/[^_a-zA-Z0-9].*\n { yyextra->lexing_if = 1; yyextra->space_tokens = 0; return HASH_IF; diff --git a/src/glsl/glcpp/tests/066-if-nospace-expression.c b/src/glsl/glcpp/tests/066-if-nospace-expression.c new file mode 100644 index 00000000000..3b0b47349d0 --- /dev/null +++ b/src/glsl/glcpp/tests/066-if-nospace-expression.c @@ -0,0 +1,3 @@ +#if(1) +success +#endif diff --git a/src/glsl/glcpp/tests/066-if-nospace-expression.c.expected b/src/glsl/glcpp/tests/066-if-nospace-expression.c.expected new file mode 100644 index 00000000000..0e84a7cda39 --- /dev/null +++ b/src/glsl/glcpp/tests/066-if-nospace-expression.c.expected @@ -0,0 +1,4 @@ + +success + + |