This is the file NEWS for the flex package. It records user -visible changes between releases of flex See the file COPYING for copying conditions * after version 2.5.8 ** new tests in test suite: test-mem-{nr,r}, test-posix, test-posixly-correct, test-debug-{nr,r} ** made changes to work with gcc-3.2 development code. (Yes, we were doing things wrong) ** ability to choose which memory functions are used in flex ** new yylex_destroy() function for the non-reentrant scanner ** new handling of POSIXLY_CORRECT environment variable ** the test suite now has its copyrights explicitly described ** new ca, de, fr, ru, sv, tr translations * version 2.5.8 ** a new --posix option generates scanners with posix-style abc{1,3} compatible parsing, see manual for the screwy details * version 2.5.7 ** configure.in now includes a call to AC_PREREQ to enforce the requirement for autoconf at least 2.50 (This only effects you if you're doing flex development.) ** configure now uses autoconf's versioning information and configure --help reports the bug-reporting address for flex ** test suite now only reports success versus failure; reporting skipped is problematic under the current setup ** compilation with --disable-nls now works ** flex can now be built in a separate directory * version 2.5.6 ** gettext support added (from gettext 0.11) *** translations for ca, da, de, es, fr, ko, ru, sv, tr included ** distribution now built under automake 1.6 and autoconf 2.53 ** command-line option parsing happens differently now: *** Added long option parsing *** Options -n and -c, previously deprecated, now simply do nothing *** Options are now parsed left to right ** added a number of new options *** All positive %options are now accessible from the command line *** Added option -D, to define a preprocessor symbol *** Added option --header=FILE to specify a C .h file to generate *** added option --yywrap to call yywrap on EOF *** added option --yylineno to track line count in yylineno *** --yyclass=NAME name of C++ class when generating c++ scanners *** for long option names which are associated with existing short options, see accompanying documentation *** new %option nounistd or command-line --nounistd added to prevent flex from generating #include on systems that don't have that include file ** Support for reentrant C scanners has been added *** Updated the manual with the new reentrant API *** Two new options %option reentrant (-R) and %option reentrant-bison (-Rb) *** All globals optionally placed into struct yyglobals_t *** All access to globals replaced by macro invocations *** All functions optionally take one additional argument, yy_globals *** New style for invoking reentrant scanner: yylex_init(void** scanner ); yylex( scanner ); yylex_destroy( scanner ); *** Added get/set functions for members of struct yy_globals_t e.g., yyget_text, yyget_leng, etc *** Prefix substitution added for new functions *** Macro shortcuts to the lengthy get/set functions provided for use in actions. e.g., yytext, yyleng, etc *** Arbitrary, user-defined data, "yyextra", may be added to scanner ** %option nomain no longer implies %option yywrap But the inverse is still true ** Developer test suite added *** TESTS/ directory has been added. Users can 'make check' in the TESTS directory to execute the test suite ** Support for bison variables yylval and yylloc added ** automake support for the build process ** manual is now in texinfo/info format *** flex.1 removed from distribution ** flex no longer generates C-language scanners with C++-style comments ** flex now generates scanners in c++ which are compatible with recent c++ compilers ** flex input scanner now recognizes '\r' as an EOL character See the file ONEWS for changes in earlier releases. Local Variables: mode: text mode: outline-minor end: