Michael Meskes <[EMAIL PROTECTED]> writes:
>> At this point I think our first question is whether flex 2.5.31 is
>> correctly detecting a hole in the ecpg lexer rules that was missed by
>> flex 2.5.4, or whether the warning is simply wrong.
> Yes, that's it. The big problem seems to be that flex does not have a
> way to help finding that hole.
Yeah, I was scratching my head over that too. You'd think there'd be
some more useful debug output.
FWIW, I found two basic causes of that failure when I was fixing the
other lexers:
* not accounting for the fact that "." matches everything but newline.
You can write .|\n instead.
* not ensuring that a single character can always be matched. For
instance, one lexer had several rules for \ followed by various
things, but no rule that could match \ not followed by anything,
which meant that \ just before EOF was a missing case.
But I'm not sure that helps, since flex 2.5.4 detected those cases.
We don't really know what we're dealing with in this ecpg situation...
regards, tom lane
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html