Package: flex
Version: 2.5.31-26

The version of flex in Debian testing no longer works with a
large number of packages which depend on traditional lex
compatibility or POSIX lex compliance.  The biggest problem
I have had is that yywrap() now takes an argument of some
type.

Because of this I don't think the /usr/bin/lex, /usr/lib/libl.a,
and the /usr/share/man/man1/lex.1.gz compatibility symlinks
are appropriate anymore.

There is a second issue, which is that the info and man
documentation fail to describe the compatibility issues.  It
would seem to be appropriate to document when the yywrap()
function is discussed as well as in sections talking about
porting "AT&T" code (which is of course not the only code which
will have problems anymore -- POSIX and BSD code will also
fail).  Similarly, the section talking about POSIX compliance
says:

 "`flex' is fully compliant with the POSIX `lex' specification,
  except that when using `%pointer' (the default), a call to
  `unput()' destroys the contents of `yytext', which is counter
  to the POSIX specification."

I believe that is an incorrect and misleading statement.

I am happy to see, now that I am submitting this bug report,
that there is a blurb in the package description and a
reference to flex-old.  Maybe that should be the default
version of flex to be installed.

Finally, I'm happy to break this into multiple reports if it
is deemed appropriate.

Thanks,
-Ross


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to