build: do not prototype flex-generated functions.

Some versions of Flex, possibly modified by the distribution package
maintainers, have incompatible signatures.  Since newer versions of
Flex prototype their functions, avoid the conflicts in that case.
Reported by Stefano Lattarini.
<http://lists.gnu.org/archive/html/bug-bison/2012-05/msg00012.html>.

* src/flex-scanner.h (FLEX_VERSION_GT): New.
Use it to issue prototypes for flex-generated functions only for
versions up to 2.5.31, in accordance with the comment.
See commit dc9701e848.
Use it to define yylex_destroy when needed.
This commit is contained in:
Akim Demaille
2012-05-15 11:22:34 +02:00
parent 7fb72c6e53
commit 86b08b49b3
2 changed files with 22 additions and 7 deletions

8
NEWS
View File

@@ -59,7 +59,13 @@ Bison News
format. Incorrect index entries were fixed. Some other errors were
fixed.
** Changes to the build system:
** Building bison:
*** Conflicting prototypes with recent/modified Flex.
Fixed build problems with the current, unreleased, version of Flex,
and some modified versions of 2.5.35, which have modified function
prototypes.
*** Warnings during the build procedure have been eliminated.