diff options
author | Carl Worth <cworth@cworth.org> | 2010-07-20 15:53:14 -0700 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2010-07-20 15:53:14 -0700 |
commit | 198446af71a9667e43237a3a60a1aa4dcf2c24c6 (patch) | |
tree | 4378301bbefec85b771e36f8a3f57ec5e8f64746 | |
parent | 3f8f90d14096fd352fdc6d139fdec34d4b095239 (diff) |
glcpp: Avoid warnings in generated flex code.
We define the YY_NO_INPUT macro to avoid one needless function being
generated.
for the other needless functions, (yyunput and yy_top_state), we add a
new UNREACHABLE start condition and call these functions from an
action there. This doesn't change functionality at all, (since we
never enter the UNREACHABLE start condition), but makes the compiler
stop complaining about these two functions being defined but not used.
-rw-r--r-- | src/glsl/glcpp/glcpp-lex.l | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/glsl/glcpp/glcpp-lex.l b/src/glsl/glcpp/glcpp-lex.l index 29b2769397..a4c891bdc6 100644 --- a/src/glsl/glcpp/glcpp-lex.l +++ b/src/glsl/glcpp/glcpp-lex.l @@ -34,6 +34,8 @@ int glcpp_get_column (yyscan_t yyscanner); void glcpp_set_column (int column_no , yyscan_t yyscanner); +#define YY_NO_INPUT + #define YY_USER_ACTION \ do { \ yylloc->source = 0; \ @@ -49,7 +51,7 @@ void glcpp_set_column (int column_no , yyscan_t yyscanner); %option prefix="glcpp_" %option stack -%x DONE COMMENT +%x DONE COMMENT UNREACHABLE SPACE [[:space:]] NONSPACE [^[:space:]] @@ -264,6 +266,15 @@ HEXADECIMAL_INTEGER 0[xX][0-9a-fA-F]+[uU]? return NEWLINE; } + /* We don't actually use the UNREACHABLE start condition. We + only have this action here so that we can pretend to call some + generated functions, (to avoid "defined but not used" + warnings. */ +<UNREACHABLE>. { + unput('.'); + yy_top_state(yyextra); +} + %% void |