Re: CVS HEAD compile warning - Mailing list pgsql-hackers

From Tom Lane
Subject Re: CVS HEAD compile warning
Date
Msg-id 20033.1077899945@sss.pgh.pa.us
Whole thread Raw
In response to Re: CVS HEAD compile warning  (Michael Meskes <meskes@postgresql.org>)
List pgsql-hackers
Michael Meskes <meskes@postgresql.org> 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
byvarious things, but no rule that could match \ not followed by anything, which meant that \ just before EOF was a
missingcase.
 

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


pgsql-hackers by date:

Previous
From: "scott.marlowe"
Date:
Subject: Re: Tablespaces
Next
From: Tom Lane
Date:
Subject: Re: Tablespaces