glsl: Add flex options to eliminate the default rule
authorCarl Worth <cworth@cworth.org>
Tue, 1 Jul 2014 22:10:02 +0000 (15:10 -0700)
committerCarl Worth <cworth@cworth.org>
Tue, 29 Jul 2014 22:11:51 +0000 (15:11 -0700)
commita62354a9877e327c44ce4f0898359b4a3db41727
tree889d84addf9c94699e2277ab162b15e009594608
parentbc8721f16f2f4a08e6ad935723cc52de1748b63f
glsl: Add flex options to eliminate the default rule

We've had bugs in the past where we have been inadvertently matching the
default rule.

Just as we did in the pre-processor in the previous commit, we can use:

%option warn nodefault

in the compiler to instruct flex to not generate the default rule, and
further to warn if our set of rules could let any characters go unmatched.

With this warning active, flex actually warns that the catch-all rule we
recently added to the compiler could never be matched. Since that is all
safely determined at compile time now, we can safely drop this run-time
compiler error message, (as we do in this commit).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
src/glsl/glsl_lexer.ll