[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms



On Sat, Jun 14, 2003 at 10:01:00PM +0200, Jochen Voss wrote:
> Hallo,
> 
> On Sat, Jun 14, 2003 at 08:41:48PM +0200, Bill Allombert wrote:
> Well, not really.  libl only implements 'main' and 'yywrap'.
> Virtually all programs want to implement their own version of
> main (e.g. to do option parsing), so this is no problem.
> And about 'yywrap' the manual states the following.
> 
>     If you do not supply your own version of `yywrap()', then you must
>     either use `%option noyywrap' (in which case the scanner behaves
>     as though `yywrap()' returned 1), or you must link with `-lfl' to
>     obtain the default version of the routine, which always returns 1.
> 
> So there is no real problem, too.  Most of my programs do not need the
> yywrap feature, so I tend to just use `%option noyywrap'.

Thanks a lot for the explanation. IIUC, libl.a is just a way to let the
linker decide if the program provide main and yywrap?
Then one should either use %option noyywrap or provide yywrap().

> Until now the flex output seemed quite portable to me.

and the new flex lead to a catch 22:
-- ship the lex.yy.c which is not portable
-- let the system lex build it, but then there is problem between POSIX
lex and flex

The issue is not so much with Debian since Debian and Manoj are usually
very conservative with softwares, but with the distros out there that
will start shipping flex 2.5.31 as if it was the sole version worse
using and then authors will start receiving report that their software
don't build.

Cheers,
-- 
Bill. <ballombe@debian.org>

Imagine a large red swirl here. 



Reply to: