1*7e382390SJung-uk Kimflex NEWS 23e102307SJung-uk Kim 3*7e382390SJung-uk Kim* Noteworthy changes in release 2.6.4 (2017-05-06) [stable] 4*7e382390SJung-uk Kim 5*7e382390SJung-uk Kim** build 6*7e382390SJung-uk Kim 7*7e382390SJung-uk Kim*** The indent target now knows about flex's new (as of 2.6.0) 8*7e382390SJung-uk Kim layout. The indent rules it would apply are not correct and do 9*7e382390SJung-uk Kim need to be fixed. 10*7e382390SJung-uk Kim 11*7e382390SJung-uk Kim*** The files included in the flex distribution are now built by the 12*7e382390SJung-uk Kim version of flex that is included in the distribution. 13*7e382390SJung-uk Kim 14*7e382390SJung-uk Kim*** The configure script has a better idea of which headers are 15*7e382390SJung-uk Kim required to build flex. It will also error when missing functions 16*7e382390SJung-uk Kim are detected. 17*7e382390SJung-uk Kim 18*7e382390SJung-uk Kim*** We have lowered the versions of automake and gettext that 19*7e382390SJung-uk Kim configure.ac lists as required for building flex. In autogen.sh, 20*7e382390SJung-uk Kim we now check for how to call libtoolize and use what we find in 21*7e382390SJung-uk Kim the rest of the script. 22*7e382390SJung-uk Kim 23*7e382390SJung-uk Kim*** Since files in lib/ are picked up as needed by src/, we no longer 24*7e382390SJung-uk Kim generate a Makefile for that directory. 25*7e382390SJung-uk Kim 26*7e382390SJung-uk Kim*** Flex can be cross compiled. 27*7e382390SJung-uk Kim 28*7e382390SJung-uk Kim** documentation 29*7e382390SJung-uk Kim 30*7e382390SJung-uk Kim*** Some typos were removed from the manual. 31*7e382390SJung-uk Kim 32*7e382390SJung-uk Kim** scanner 33*7e382390SJung-uk Kim 34*7e382390SJung-uk Kim*** Some minor performance enhancements. 35*7e382390SJung-uk Kim 36*7e382390SJung-uk Kim*** We honor user defined yy_* macros again. We are also more careful 37*7e382390SJung-uk Kim to not leak macro definitions into header files. 38*7e382390SJung-uk Kim 39*7e382390SJung-uk Kim*** A number of portability fixes were introduced so building flex is 40*7e382390SJung-uk Kim more reliable on more platforms. Additionally, outdated function 41*7e382390SJung-uk Kim calls were removed. 42*7e382390SJung-uk Kim 43*7e382390SJung-uk Kim*** When building the flex executable itself, %# comments from 44*7e382390SJung-uk Kim flex.skl are removed when generating the C source code array. This 45*7e382390SJung-uk Kim reduces the size of flex. 46*7e382390SJung-uk Kim 47*7e382390SJung-uk Kim** test suite 48*7e382390SJung-uk Kim 49*7e382390SJung-uk Kim*** All scripts in the test suite are now run by $(SHELL) and the 50*7e382390SJung-uk Kim needed portability fixes have been included. 51*7e382390SJung-uk Kim 52*7e382390SJung-uk Kim*** Test suite dependencies are handled much better. This only matters 53*7e382390SJung-uk Kim if you are actively developing flex or its test suite. 54*7e382390SJung-uk Kim 55*7e382390SJung-uk Kim*** Tests that depend on platform dependent features now properly skip 56*7e382390SJung-uk Kim when those platforms are not present. 57*7e382390SJung-uk Kim 58*7e382390SJung-uk Kim*** When running "make check", you can now pas V=0 to silence more of 59*7e382390SJung-uk Kim the build. This is useful when you're less connncerned about the 60*7e382390SJung-uk Kim details of building and linking the test programs themselves. 61*7e382390SJung-uk Kim 62*7e382390SJung-uk Kim* Noteworthy changes in release 2.6.3 (2016-12-30) [stable] 63*7e382390SJung-uk Kim 64*7e382390SJung-uk Kim** scanner 65*7e382390SJung-uk Kim 66*7e382390SJung-uk Kim*** several bug fixes resolved problems introduced in recent flex 67*7e382390SJung-uk Kim versions regarding processing of comments, literals and various 68*7e382390SJung-uk Kim quoting scenarios. 69*7e382390SJung-uk Kim 70*7e382390SJung-uk Kim*** If the path to m4 was sufficiently long, a buffer overflow could 71*7e382390SJung-uk Kim occur. This has been resolved. The fix also removes dependence on 72*7e382390SJung-uk Kim the constant PATH_MAX. 73*7e382390SJung-uk Kim 74*7e382390SJung-uk Kim** build 75*7e382390SJung-uk Kim 76*7e382390SJung-uk Kim*** A new configure option --disable-bootstrap changes the behavior of 77*7e382390SJung-uk Kim the build system when building flex. The default 78*7e382390SJung-uk Kim "--enable-bootstrap" behavior is to build flex, then to use that 79*7e382390SJung-uk Kim flex to build flex again. With --disable-bootstrap, the scanner is 80*7e382390SJung-uk Kim simply built by sedding the scanner source. This is friendlier to 81*7e382390SJung-uk Kim cross compilation. 82*7e382390SJung-uk Kim 83*7e382390SJung-uk Kim*** The compatibility functions in lib/ are no longer built as a 84*7e382390SJung-uk Kim library. Instead, they are built as $(LIBOBJ) objects. This is 85*7e382390SJung-uk Kim simpler and friendlier to cross compilation. 86*7e382390SJung-uk Kim 87*7e382390SJung-uk Kim*** It is now possible to build flex without building the accompanying 88*7e382390SJung-uk Kim libfl. This is friendlier to cross compilation. See the 89*7e382390SJung-uk Kim --disable-libfl option to configure. Resolves #99. 90*7e382390SJung-uk Kim 91*7e382390SJung-uk Kim*** the PIC version of libfl was not correctly built. It is no longer 92*7e382390SJung-uk Kim included in the build/installation targets of flex since it was 93*7e382390SJung-uk Kim unused. 94*7e382390SJung-uk Kim 95*7e382390SJung-uk Kim*** the distributed man page is only rebuilt when the relevant source 96*7e382390SJung-uk Kim files change or when the binary doesn't exist. In particular, this 97*7e382390SJung-uk Kim is friendlier to cross compilation. Resolves #108 98*7e382390SJung-uk Kim 99*7e382390SJung-uk Kim** test 100*7e382390SJung-uk Kim 101*7e382390SJung-uk Kim*** the shell scripts in the test suite are more portable across different shell implementations. 102*7e382390SJung-uk Kim 103*7e382390SJung-uk Kim* version 2.6.2 released 2016-10-24 104*7e382390SJung-uk Kim 105*7e382390SJung-uk Kim** flex internals 106*7e382390SJung-uk Kim 107*7e382390SJung-uk Kim*** a segfalt involving yyrestart(NULL) has been fixed 108*7e382390SJung-uk Kim 109*7e382390SJung-uk Kim*** flex should now handle quoting when mixed with m4 processing correctly 110*7e382390SJung-uk Kim 111*7e382390SJung-uk Kim*** flex handles `[[' and `]]' correctly 112*7e382390SJung-uk Kim 113*7e382390SJung-uk Kim*** flex no longer generates non-ANSI code 114*7e382390SJung-uk Kim 115*7e382390SJung-uk Kim*** more compilation warnings were squashed in generated scanners 116*7e382390SJung-uk Kim 117*7e382390SJung-uk Kim*** prevented a buffer overflow that could occur when input buffers were the exact wrong size 118*7e382390SJung-uk Kim 119*7e382390SJung-uk Kim** test suite 120*7e382390SJung-uk Kim 121*7e382390SJung-uk Kim*** input filenames on MSWindows are now calculated correctly 122*7e382390SJung-uk Kim 123*7e382390SJung-uk Kim*** general code cleanups in a number of tests now make the test suite compile much more cleanly 124*7e382390SJung-uk Kim 125*7e382390SJung-uk Kim** build system 126*7e382390SJung-uk Kim 127*7e382390SJung-uk Kim*** the xz archive has been replaced with an lzip archive 128*7e382390SJung-uk Kim 129*7e382390SJung-uk Kim*** a new option to configure --enable-warnings to encapsulate passing 130*7e382390SJung-uk Kim of warning-related flags which is useful in testing flex 131*7e382390SJung-uk Kim 132*7e382390SJung-uk Kim*** make indent now works for out of source builds 133*7e382390SJung-uk Kim 134*7e382390SJung-uk Kim*** Portability warnings when generating Makefile.in files are now suppressed; they were just noise and the use of GNU extensions in Makefile.{am,in,} was intentional and well known. 135*7e382390SJung-uk Kim 136*7e382390SJung-uk Kim** bugs 137*7e382390SJung-uk Kim 138*7e382390SJung-uk Kim*** resolved gh#67 139*7e382390SJung-uk Kim 140*7e382390SJung-uk Kim** new sv translation from the translation project 141*7e382390SJung-uk Kim 142*7e382390SJung-uk Kim* version 2.6.1 released 2016-03-01 143*7e382390SJung-uk Kim 144*7e382390SJung-uk Kim** flex resources 145*7e382390SJung-uk Kim 146*7e382390SJung-uk Kim*** The flex project is now hosted at github. Consider this a "period of transition". In particular, you should start at https://github.com/westes/flex for the flex codebase, issue tracking and pull requests. 147*7e382390SJung-uk Kim 148*7e382390SJung-uk Kim*** New releases of flex are to be found at https://github.com/westes/flex/releases. 149*7e382390SJung-uk Kim 150*7e382390SJung-uk Kim** flex internals 151*7e382390SJung-uk Kim 152*7e382390SJung-uk Kim*** Flex now uses more modern and more standard names for variable types. There's more work to be done on that front yet, though. 153*7e382390SJung-uk Kim 154*7e382390SJung-uk Kim*** A number of compiler warnings have been remedied. 155*7e382390SJung-uk Kim 156*7e382390SJung-uk Kim*** Line directives should now work as expected and be absent when that is expected. 157*7e382390SJung-uk Kim 158*7e382390SJung-uk Kim** test suite 159*7e382390SJung-uk Kim 160*7e382390SJung-uk Kim*** When running the test suite, c++ files are compiled with the c++ header inside the flex distribution, rather than relying on the build system's flex header , which might not be installed yet or which might be out of date with respect to what flex tests expect. 161*7e382390SJung-uk Kim 162*7e382390SJung-uk Kim*** Some portability fixes in the test suite such as opening files for reading in binary mode 163*7e382390SJung-uk Kim 164*7e382390SJung-uk Kim** Building flex 165*7e382390SJung-uk Kim 166*7e382390SJung-uk Kim*** The file src/scan.c asdistributed with flex source is now built with the current version of flex. Occasionally this had to be done manually to pick up new flex features. It's now just a part of flex's build system. 167*7e382390SJung-uk Kim 168*7e382390SJung-uk Kim*** The pdf version of the manual is no longer distributed with flex, although if you have the texinfo package installed, you can still build it. 169*7e382390SJung-uk Kim 170*7e382390SJung-uk Kim*** lots of general build system cleanup 171*7e382390SJung-uk Kim 172*7e382390SJung-uk Kim*** the build system tries a bit harder to find libtoolize and texi2dvi. 173*7e382390SJung-uk Kim 174*7e382390SJung-uk Kim*** When help2man and texi2dvi are missing, the error messages are now much more helpful. 175*7e382390SJung-uk Kim 176*7e382390SJung-uk Kim** bug fixes 177*7e382390SJung-uk Kim 178*7e382390SJung-uk Kim*** resolved github issues #53, #54, #55, #61. 179*7e382390SJung-uk Kim 180*7e382390SJung-uk Kim*** Resolved sf bugs #128, #129, #155, #160, #184, #187, #195. 181*7e382390SJung-uk Kim 182*7e382390SJung-uk Kim* version 2.6.0 released 2015-11-17 183*7e382390SJung-uk Kim 184*7e382390SJung-uk Kim** User Visible Changes 185*7e382390SJung-uk Kim 186*7e382390SJung-uk Kim*** C++ scanners now use references instead of pointers. See the manual for details. 187*7e382390SJung-uk Kim 188*7e382390SJung-uk Kim*** A number of compiler warnings were addressed, so flex generated scanners should be quieter under compiler warning scenarios. 189*7e382390SJung-uk Kim 190*7e382390SJung-uk Kim*** Allow error reporting routines to accept varying number of arguments 191*7e382390SJung-uk Kim 192*7e382390SJung-uk Kim*** Removed deprecated 'register' storage class specifier 193*7e382390SJung-uk Kim 194*7e382390SJung-uk Kim*** Changeed output formats from octal to hexadecimal 195*7e382390SJung-uk Kim 196*7e382390SJung-uk Kim*** check limits before using array index cclp; resolves sf-166 197*7e382390SJung-uk Kim 198*7e382390SJung-uk Kim*** Suppress clang warning about empty @param paragraph; resolves sf#158 199*7e382390SJung-uk Kim 200*7e382390SJung-uk Kim*** Fixed malloc/realloc replacement, resolves sf bug#151. 201*7e382390SJung-uk Kim 202*7e382390SJung-uk Kim*** Adjusted buffer sizes on ia64. 203*7e382390SJung-uk Kim 204*7e382390SJung-uk Kim*** various documentation and code clean up fixes: resolves sf bugs #167, #168, among other patches. 205*7e382390SJung-uk Kim 206*7e382390SJung-uk Kim** Flex Internals 207*7e382390SJung-uk Kim 208*7e382390SJung-uk Kim*** flex is now organized into subdirectories. This keeps the tree neater at the top level and puts like things near each other and unlike things away from each other. 209*7e382390SJung-uk Kim 210*7e382390SJung-uk Kim*** The test suite has been reorganized and is now run with the parallel test suite harness from automake. 211*7e382390SJung-uk Kim 212*7e382390SJung-uk Kim*** Cleaned up the automake parts of the build system to better reflect what automake does on its own. Also added a call to libtoolize in autogen.sh because autoreconf gets confused without a prior run of libtoolize. 213*7e382390SJung-uk Kim 214*7e382390SJung-uk Kim*** po/Makefile now includes a rule to fetch the latest translations from the translation project. "make -f po/Makefile getpo" from the top level of the flex tree will fetch the files. 215*7e382390SJung-uk Kim 216*7e382390SJung-uk Kim*** New da translation from the translation project 217*7e382390SJung-uk Kim 218*7e382390SJung-uk Kim* flex version 2.5.39 released 2014-03-26 219*7e382390SJung-uk Kim 220*7e382390SJung-uk Kim** no user visible changes in this release 221*7e382390SJung-uk Kim 222*7e382390SJung-uk Kim* version 2.5.38 released 2014-02-14 223*7e382390SJung-uk Kim 224*7e382390SJung-uk Kim** internationalization 225*7e382390SJung-uk Kim 226*7e382390SJung-uk Kim*** add sr translation from the translation project 227*7e382390SJung-uk Kim 228*7e382390SJung-uk Kim*** update da, es, ko, nl, pt_BR, ro, ru, sv, tr, vi, zh_CN translations from the translation project 229*7e382390SJung-uk Kim 230*7e382390SJung-uk Kim*** rename zh_tw to its proper zh_TW name 2313e102307SJung-uk Kim 2323e102307SJung-uk Kim* version 2.5.37 released 2012-08-03 2333e102307SJung-uk Kim 2343e102307SJung-uk Kim** Import flex into git. See 2353e102307SJung-uk Kim git://flex.git.sourceforge.net/gitroot/flex/flex. 2363e102307SJung-uk Kim 2373e102307SJung-uk Kim** Fix make install target to not fail when the flex++ program is 2383e102307SJung-uk Kim already installed 2393e102307SJung-uk Kim 2403e102307SJung-uk Kim** New translations from the translation project: de, fi, pl, vi 2413e102307SJung-uk Kim 2423e102307SJung-uk Kim* version 2.5.36 released 2012-07-20 2433e102307SJung-uk Kim 2443e102307SJung-uk Kim** various portability fixes that quiet compiler warnings on 64-bit 2453e102307SJung-uk Kim hosts 2463e102307SJung-uk Kim 2473e102307SJung-uk Kim** various manual fixes, including correcting the name of a %option and 2483e102307SJung-uk Kim updating some simple examples to use ANSI C syntax 2493e102307SJung-uk Kim 2503e102307SJung-uk Kim** various bug fixes that prevent certain error conditions from 2513e102307SJung-uk Kim persisting when they should not persist 2523e102307SJung-uk Kim 2533e102307SJung-uk Kim** improvements to the test suite so it behaves better when linking 2543e102307SJung-uk Kim compiled files 2553e102307SJung-uk Kim 2563e102307SJung-uk Kim** new translations from the translation project: ca, da, es, fi, fr, 2573e102307SJung-uk Kim ga, ko, pt_br, ro, ru, sv, tr, zh_cn 2583e102307SJung-uk Kim 2593e102307SJung-uk Kim** the flex distribution is now built with automake 1.10.1 and automake 2603e102307SJung-uk Kim 2.61 2613e102307SJung-uk Kim 2623e102307SJung-uk Kim* version 2.5.35 released 2008-02-26 2633e102307SJung-uk Kim 2643e102307SJung-uk Kim** fixed bug that prevented flex from accepting certain comments in the 2653e102307SJung-uk Kim scanner file (resolves bugs #1849809 and #1849805) 2663e102307SJung-uk Kim 2673e102307SJung-uk Kim** fix bug that prevented headers for all functions from being generated 2683e102307SJung-uk Kim (resolves bug #1628314) 2693e102307SJung-uk Kim 2703e102307SJung-uk Kim** change yy_size_t to be size_t (resolves bug #1849812) 2713e102307SJung-uk Kim 2723e102307SJung-uk Kim** new de, nl, pl, pt_br, vi translations from the translation project 2733e102307SJung-uk Kim 2743e102307SJung-uk Kim* version 2.5.34 released 2007-12-12 2753e102307SJung-uk Kim 2763e102307SJung-uk Kim** introduce yylex_init_extra; see the manual for details 2773e102307SJung-uk Kim 2783e102307SJung-uk Kim** introduce %option extra-type="your_type *" (resolves bug #1744505) 2793e102307SJung-uk Kim 2803e102307SJung-uk Kim** The flex program now parses multiple short concatenated options (resolves bug 2813e102307SJung-uk Kim #1619820). Thanks to Petr Machata of Red Hat on this issue. 2823e102307SJung-uk Kim 2833e102307SJung-uk Kim** better checking after yyalloc/yyrealloc (resolves bug #1595967) 2843e102307SJung-uk Kim 2853e102307SJung-uk Kim** flex now provides for a libfl_pic.a compiled with position 2863e102307SJung-uk Kim independent code. Particularly useful when including a flex scanner 2873e102307SJung-uk Kim in a shared library and with more recent versions of gcc. Thanks to the Debian project for the idea. 2883e102307SJung-uk Kim 2893e102307SJung-uk Kim** SourceForge feature request #1658379: Expose YY_BUF_SIZE in the 2903e102307SJung-uk Kim header file. 2913e102307SJung-uk Kim 2923e102307SJung-uk Kim** flex better escapes filenames with special characters in them 2933e102307SJung-uk Kim (resolves bug #1623600) 2943e102307SJung-uk Kim 2953e102307SJung-uk Kim** a memory leak was plugged(resolves bug #1601111) 2963e102307SJung-uk Kim 2973e102307SJung-uk Kim** pattern language expanded; see the manual for details on the below 2983e102307SJung-uk Kim highlights 2993e102307SJung-uk Kim 3003e102307SJung-uk Kim*** pattern options added to specify patterns as case-insensitive or 3013e102307SJung-uk Kim case-sensitive 3023e102307SJung-uk Kim 3033e102307SJung-uk Kim*** pattern options to specify whether the "." character should match 3043e102307SJung-uk Kim the newline character 3053e102307SJung-uk Kim 3063e102307SJung-uk Kim*** pattern options added to allow ignoring of whitespace in patterns 3073e102307SJung-uk Kim 3083e102307SJung-uk Kim*** POSIX character classes may be negated in patterns 3093e102307SJung-uk Kim 3103e102307SJung-uk Kim*** patterns may now use set difference, union operators 3113e102307SJung-uk Kim 3123e102307SJung-uk Kim** the manual now contains an appendix listing various common patterns 3133e102307SJung-uk Kim which may be useful when writing scanners 3143e102307SJung-uk Kim 3153e102307SJung-uk Kim** some memory leaks were removed from the C++ scanner (but the C++ 3163e102307SJung-uk Kim scanner is still experimental and may change radically without 3173e102307SJung-uk Kim notice) 3183e102307SJung-uk Kim 3193e102307SJung-uk Kim** c++ scanners can now use yywrap 3203e102307SJung-uk Kim 3213e102307SJung-uk Kim** added new unit test for c++ and yywrap 3223e102307SJung-uk Kim 3233e102307SJung-uk Kim** portability fixes to some unit tests 3243e102307SJung-uk Kim 3253e102307SJung-uk Kim** flex man page and flex manual in pdf now distributed in the flex 3263e102307SJung-uk Kimdistribution 3273e102307SJung-uk Kim 3283e102307SJung-uk Kim** new ca, vi, ga, nl translations from the translation project 3293e102307SJung-uk Kim 3303e102307SJung-uk Kim** flex no longer comes with an rpm spec file 3313e102307SJung-uk Kim 3323e102307SJung-uk Kim** flex development now happens with automake 1.9.6 3333e102307SJung-uk Kim 3343e102307SJung-uk Kim* version 2.5.33 released 2006-2-20 3353e102307SJung-uk Kim 3363e102307SJung-uk Kim** all flex resources are now to be found from the website at 3373e102307SJung-uk Kim http://flex.sourceforge.net/ 3383e102307SJung-uk Kim 3393e102307SJung-uk Kim** there was no release 2.5.32 published 3403e102307SJung-uk Kim 3413e102307SJung-uk Kim** numerous bug and security fixes 3423e102307SJung-uk Kim 3433e102307SJung-uk Kim** new nl, vi, sv, ro, po, ga, ca, fr, tr translations from the translation project 3443e102307SJung-uk Kim 3453e102307SJung-uk Kim** upgrade to use gettext 0.12 (this now makes the "pdf" and "ps" 3463e102307SJung-uk Kim targets in the build system able to be run successfully) 3473e102307SJung-uk Kim 3483e102307SJung-uk Kim* version 2.5.31 released 2003-4-1 3493e102307SJung-uk Kim 3503e102307SJung-uk Kim** remove --enable-maintainer-mode configure option; none of the 3513e102307SJung-uk Kim Makefiles were using it and it can be unduely confusing 3523e102307SJung-uk Kim 3533e102307SJung-uk Kim* version 2.5.30 released 2003-4-1 3543e102307SJung-uk Kim 3553e102307SJung-uk Kim** yylineno is per-buffer in reentrant scanners 3563e102307SJung-uk Kim 3573e102307SJung-uk Kim** added %top directive for placing code at the top of the generated 3583e102307SJung-uk Kim scanner; see manual for details 3593e102307SJung-uk Kim 3603e102307SJung-uk Kim** flex now uses m4 to generate scanners; while this means that 3613e102307SJung-uk Kim scanners are more readable, it means that flex requires m4 to be 3623e102307SJung-uk Kim installed; see manual for details 3633e102307SJung-uk Kim 3643e102307SJung-uk Kim* version 2.5.29 released 2003-3-5 3653e102307SJung-uk Kim 3663e102307SJung-uk Kim** Automatic stack management for multiple input buffers in C and C++ scanners 3673e102307SJung-uk Kim 3683e102307SJung-uk Kim** moved the flex documentation to a new doc/ subdirectory 3693e102307SJung-uk Kim 3703e102307SJung-uk Kim** cleanups to the yy namespace 3713e102307SJung-uk Kim 3723e102307SJung-uk Kim* version 2.5.28 released 2003-2-12 3733e102307SJung-uk Kim 3743e102307SJung-uk Kim** flex is now hosted at sourceforge 3753e102307SJung-uk Kim 3763e102307SJung-uk Kim** Fixed trailing slash bug in YY_INPUT macro def 3773e102307SJung-uk Kim 3783e102307SJung-uk Kim** Flex now warns if always-interactive is specified with fast or full 3793e102307SJung-uk Kim 3803e102307SJung-uk Kim* version 2.5.27 released 2003-1-21 3813e102307SJung-uk Kim 3823e102307SJung-uk Kim** flex now works with recent bison versions 3833e102307SJung-uk Kim 3843e102307SJung-uk Kim** new pt_br translation from the translation project 3853e102307SJung-uk Kim 3863e102307SJung-uk Kim* version 2.5.26 released 2003-1-14 3873e102307SJung-uk Kim 3883e102307SJung-uk Kim** Fixed table deserialization bug on big-endian archs. Patch sent from Bryce Nichols <bryce@bnichols.org> 3893e102307SJung-uk Kim 3903e102307SJung-uk Kim** yyleng has proper declarations now; this caused flex to generate 3913e102307SJung-uk Kim unusable scanners for some programs 3923e102307SJung-uk Kim 3933e102307SJung-uk Kim** the flex distribution now includes a spec file suitable for use 3943e102307SJung-uk Kim with rpm 3953e102307SJung-uk Kim 3963e102307SJung-uk Kim** some more c++ fixes 3973e102307SJung-uk Kim 3983e102307SJung-uk Kim** new es translation from the translation project 3993e102307SJung-uk Kim 4003e102307SJung-uk Kim** slight tweeks to the flex_int*_t types 4013e102307SJung-uk Kim 4023e102307SJung-uk Kim** flex now warns about pattern ranges that might be ambiguous when 4033e102307SJung-uk Kim generating a case-insensitive scanner 4043e102307SJung-uk Kim 4053e102307SJung-uk Kim 4063e102307SJung-uk Kim* version 2.5.25 released 2002-12-2 4073e102307SJung-uk Kim 4083e102307SJung-uk Kim** flex now uses flex_int*_t types. For C99 systems, they are just the 4093e102307SJung-uk Kim int*_t types; for non-C99 systems, we just make some typedefs 4103e102307SJung-uk Kim 4113e102307SJung-uk Kim** new pt_br translation from the translation project 4123e102307SJung-uk Kim 4133e102307SJung-uk Kim* version 2.5.24 released 2002-11-25 4143e102307SJung-uk Kim 4153e102307SJung-uk Kim* more portability fixes 4163e102307SJung-uk Kim 4173e102307SJung-uk Kim** the manual continues to be updated and edited, but it's still got a 4183e102307SJung-uk Kim ways to go 4193e102307SJung-uk Kim 4203e102307SJung-uk Kim** it is possible to have multiple c++ scanners in the same program again 4213e102307SJung-uk Kim 4223e102307SJung-uk Kim** new turkish translation from the translation project 4233e102307SJung-uk Kim 4243e102307SJung-uk Kim* version 2.5.23 released 2002-10-21 4253e102307SJung-uk Kim 4263e102307SJung-uk Kim** more portability fixes 4273e102307SJung-uk Kim 4283e102307SJung-uk Kim** the manual includes a title page and a table-of-contents when printed 4293e102307SJung-uk Kim 4303e102307SJung-uk Kim** the test suite can be run with "make check" from the top-level 4313e102307SJung-uk Kim directory 4323e102307SJung-uk Kim 4333e102307SJung-uk Kim** configure now accepts the --enable-maintainer-mode option 4343e102307SJung-uk Kim 4353e102307SJung-uk Kim** gettext functionality is now only available externally 4363e102307SJung-uk Kim 4373e102307SJung-uk Kim** the constant FLEX_BETA is defined if flex is a beta release 4383e102307SJung-uk Kim 4393e102307SJung-uk Kim** the script create-test was not included in the distribution and it 4403e102307SJung-uk Kim should have been 4413e102307SJung-uk Kim 4423e102307SJung-uk Kim* version 2.5.22 released 2002-10-10 4433e102307SJung-uk Kim 4443e102307SJung-uk Kim** more portability fixes around how we get ahold of the integral 4453e102307SJung-uk Kim types; there is a constant FLEX_NEED_INTEGRAL_TYPE_DEFINITIONS 4463e102307SJung-uk Kim which you should define if you don't have the <inttypes.h> header 4473e102307SJung-uk Kim file (after you complain to your C vendor for not providing a 4483e102307SJung-uk Kim reasonable C environment) 4493e102307SJung-uk Kim 4503e102307SJung-uk Kim** more test suite cleanups; in particular, the test suite should run 4513e102307SJung-uk Kim correctly when build from a different directory 4523e102307SJung-uk Kim 4533e102307SJung-uk Kim** upgraded automake to 1.7 and consequently autoconf to 2.54; this 4543e102307SJung-uk Kim means, among other things, that there is some support for 4553e102307SJung-uk Kimformatting the manual in postscript and pdf in the distributed 4563e102307SJung-uk Kim Makefile.in (and therefore in the Makefile built by configure) 4573e102307SJung-uk Kim 4583e102307SJung-uk Kim** the flex.1 manpage is generated by help2man; (this has been true 4593e102307SJung-uk Kim for quite a while but was not listed here) 4603e102307SJung-uk Kim 4613e102307SJung-uk Kim** flex now includes three defined constants to indicate which version 4623e102307SJung-uk Kim of flex generated a scanner (YY_FLEX_{MAJOR,MINOR,SUBMINOR}_VERSION) 4633e102307SJung-uk Kim 4643e102307SJung-uk Kim** flex tries its best to output only the relevant portions of the 4653e102307SJung-uk Kim skeleton when generating a scanner, thus avoiding as much 4663e102307SJung-uk Kim conditional compilation as possible 4673e102307SJung-uk Kim 4683e102307SJung-uk Kim* version 2.5.21 released 2002-9-17 4693e102307SJung-uk Kim 4703e102307SJung-uk Kim** one of the tests in the test suite broke the dist target 4713e102307SJung-uk Kim 4723e102307SJung-uk Kim* version 2.5.20 released 2002-9-16 4733e102307SJung-uk Kim 4743e102307SJung-uk Kim** A flex scanner has the ability to save the DFA tables to a file, 4753e102307SJung-uk Kim and load them at runtime when needed; see the manual for details 4763e102307SJung-uk Kim 4773e102307SJung-uk Kim** Added %option bison-bridge (--bison-bridge) 4783e102307SJung-uk Kim 4793e102307SJung-uk Kim** Removed %option reentrant-bison/--reentrant-bison/-Rb 4803e102307SJung-uk Kim 4813e102307SJung-uk Kim** yylineno is present in all scanners; Modified nasty performance 4823e102307SJung-uk Kim penalty warning with yylineno in documentation 4833e102307SJung-uk Kim 4843e102307SJung-uk Kim** test-table-opts is now run last in the test suite because it's so fat 4853e102307SJung-uk Kim 4863e102307SJung-uk Kim** flex can, to some extent, diagnose where internal problems occur 4873e102307SJung-uk Kim 4883e102307SJung-uk Kim** new translations from the translation project: fr, ca, de, ru, sv 4893e102307SJung-uk Kim 4903e102307SJung-uk Kim**Flex generates C99 defs now; see YY_TRADITIONAL_FUNC_DEFS in the 4913e102307SJung-uk Kim manual if that's not a good thing for you 4923e102307SJung-uk Kim 4933e102307SJung-uk Kim* version 2.5.19 released 2002-9-5 4943e102307SJung-uk Kim 4953e102307SJung-uk Kim** prevent segfault on input lines which are longer than the allocated 4963e102307SJung-uk Kim space (problem report from Manoj Srivastava 4973e102307SJung-uk Kim <srivasta@golden-gryphon.com>) 4983e102307SJung-uk Kim 4993e102307SJung-uk Kim** Changed option 'header' to 'header-file' 5003e102307SJung-uk Kim 5013e102307SJung-uk Kim* version 2.5.18 released 2002-9-4 5023e102307SJung-uk Kim 5033e102307SJung-uk Kim** portability fixes for integer constants and in the way the test 5043e102307SJung-uk Kim suite reports its results 5053e102307SJung-uk Kim 5063e102307SJung-uk Kim** the test for bison was reporting bison missing when it was, in 5073e102307SJung-uk Kim fact, found 5083e102307SJung-uk Kim 5093e102307SJung-uk Kim** if we don't find GNU indent, we're more careful when we're not 5103e102307SJung-uk Kim finding it 5113e102307SJung-uk Kim 5123e102307SJung-uk Kim* version 2.5.17 released 2002-8-29 5133e102307SJung-uk Kim 5143e102307SJung-uk Kim** more portability fixes 5153e102307SJung-uk Kim 5163e102307SJung-uk Kim** updated config.sub and config.guess 5173e102307SJung-uk Kim 5183e102307SJung-uk Kim** flex is indented by GNU indent (this was done earlier but not 5193e102307SJung-uk Kim explicitly documented) 5203e102307SJung-uk Kim 5213e102307SJung-uk Kim* version 2.5.16 released 2002-8-28 5223e102307SJung-uk Kim 5233e102307SJung-uk Kim** c++ scanners compile again 5243e102307SJung-uk Kim 5253e102307SJung-uk Kim** there is now an indent target in the top-level Makefile; configure 5263e102307SJung-uk Kim checks for GNU indent which is required for proper operation of the 5273e102307SJung-uk Kim indent target 5283e102307SJung-uk Kim 5293e102307SJung-uk Kim** some more portability fixes were made 5303e102307SJung-uk Kim 5313e102307SJung-uk Kim** %options and invocation sections of manual merged 5323e102307SJung-uk Kim 5333e102307SJung-uk Kim** a c++ test was added to the test suite 5343e102307SJung-uk Kim 5353e102307SJung-uk Kim** we're trying to clean up more files in the test suite's make clean 5363e102307SJung-uk Kim targets 5373e102307SJung-uk Kim 5383e102307SJung-uk Kim* version 2.5.15 released 2002-8-21 5393e102307SJung-uk Kim 5403e102307SJung-uk Kim** reject-state buffer is now dynamically allocated and REJECT buffer 5413e102307SJung-uk Kim variables are reentrant-safe 5423e102307SJung-uk Kim 5433e102307SJung-uk Kim** manual now discusses memory usage 5443e102307SJung-uk Kim 5453e102307SJung-uk Kim** skeleton now processed by m4 before mkskel.sh; (this only matters 5463e102307SJung-uk Kim if you want to change the skeleton or if you're doing flex development) 5473e102307SJung-uk Kim 5483e102307SJung-uk Kim** zh_cn translation added from translation project 5493e102307SJung-uk Kim 5503e102307SJung-uk Kim** a bug that caused a segfault has now been fixed 5513e102307SJung-uk Kim 5523e102307SJung-uk Kim** the test suite now respects the usual CFLAGS, etc. variables 5533e102307SJung-uk Kim 5543e102307SJung-uk Kim** removed some warnings which some tests trigggered with the -s option 5553e102307SJung-uk Kim 5563e102307SJung-uk Kim** the flex-generated header file now tries to be smarter about 5573e102307SJung-uk Kim conditionally including start conditions 5583e102307SJung-uk Kim 5593e102307SJung-uk Kim** tables code omitted from generated scanner when not used 5603e102307SJung-uk Kim 5613e102307SJung-uk Kim* version 2.5.14 released 2002-8-15 5623e102307SJung-uk Kim 5633e102307SJung-uk Kim** the tests using the reentrant c scanner as c++ were reworked 5643e102307SJung-uk Kim slightly to be sure that the c++ was enforced 5653e102307SJung-uk Kim 5663e102307SJung-uk Kim** de translation now included in the distribution 5673e102307SJung-uk Kim 5683e102307SJung-uk Kim** various portability fixes regarding nls support, c++ include 5693e102307SJung-uk Kim headers, etc. 5703e102307SJung-uk Kim 5713e102307SJung-uk Kim* version 2.5.13 released 2002-8-15 5723e102307SJung-uk Kim 5733e102307SJung-uk Kim** the header file output with %option header is now much smaller 5743e102307SJung-uk Kim 5753e102307SJung-uk Kim** Fixed type mismatch in printf in scanner skeleton 5763e102307SJung-uk Kim 5773e102307SJung-uk Kim** yylex_init now reports errors 5783e102307SJung-uk Kim 5793e102307SJung-uk Kim* version 2.5.12 released 2002-8-8 5803e102307SJung-uk Kim 5813e102307SJung-uk Kim** updated gettext support to 0.11.5 5823e102307SJung-uk Kim 5833e102307SJung-uk Kim** new fr translation from the translation project 5843e102307SJung-uk Kim 5853e102307SJung-uk Kim** bison is no longer needed to build flex; If you are building flex 5863e102307SJung-uk Kim from a release (i.e., not from a cvs snapshot), then you don't need 5873e102307SJung-uk Kim to have a pre-built lex around either (unless you modify scan.l, of 5883e102307SJung-uk Kim course); (This has been true for some time, but was not mentioned 5893e102307SJung-uk Kim here.) 5903e102307SJung-uk Kim 5913e102307SJung-uk Kim* version 2.5.11 released 2002-7-31 5923e102307SJung-uk Kim 5933e102307SJung-uk Kim** Fixed bug where yyless did not consider yylineno 5943e102307SJung-uk Kim 5953e102307SJung-uk Kim** the yylineno performance hit is now gone 5963e102307SJung-uk Kim 5973e102307SJung-uk Kim** fixed some typos in the manual and we now include texinfo.tex in 5983e102307SJung-uk Kim the distribution 5993e102307SJung-uk Kim 6003e102307SJung-uk Kim** traditional prototypes output for C scanners, controlled by a 6013e102307SJung-uk Kim preprocessor symbol; see documentation for details 6023e102307SJung-uk Kim 6033e102307SJung-uk Kim* version 2.5.10 released 2002-7-24 6043e102307SJung-uk Kim 6053e102307SJung-uk Kim** yy_globals renamed to yyscanner and yy_globals_t renamed to 6063e102307SJung-uk Kim yy_guts_t 6073e102307SJung-uk Kim 6083e102307SJung-uk Kim** added dist-bzip2 option to Makefile.am so we now produce a bzip2'd 6093e102307SJung-uk Kim archive in addition to the standard gzip archive 6103e102307SJung-uk Kim 6113e102307SJung-uk Kim* version 2.5.9 6123e102307SJung-uk Kim 6133e102307SJung-uk Kim** new tests in test suite: test-mem-{nr,r}, test-posix, 6143e102307SJung-uk Kim test-posixly-correct, test-debug-{nr,r} 6153e102307SJung-uk Kim 6163e102307SJung-uk Kim** made changes to work with gcc-3.2 development code 6173e102307SJung-uk Kim 6183e102307SJung-uk Kim** ability to choose which memory functions are used in flex 6193e102307SJung-uk Kim 6203e102307SJung-uk Kim** new yylex_destroy() function for the non-reentrant scanner 6213e102307SJung-uk Kim 6223e102307SJung-uk Kim** new handling of POSIXLY_CORRECT environment variable 6233e102307SJung-uk Kim 6243e102307SJung-uk Kim** the test suite now has its copyrights explicitly described 6253e102307SJung-uk Kim 6263e102307SJung-uk Kim** new ca, de, fr, ru, sv, tr translations 6273e102307SJung-uk Kim 6283e102307SJung-uk Kim* version 2.5.8 6293e102307SJung-uk Kim 6303e102307SJung-uk Kim** a new --posix option generates scanners with posix-style abc{1,3} 6313e102307SJung-uk Kim compatible parsing, see manual for the screwy details 6323e102307SJung-uk Kim 6333e102307SJung-uk Kim* version 2.5.7 6343e102307SJung-uk Kim 6353e102307SJung-uk Kim** configure.in now includes a call to AC_PREREQ to enforce the 6363e102307SJung-uk Kim requirement for autoconf at least 2.50 (This only effects you if 6373e102307SJung-uk Kim you're doing flex development.) 6383e102307SJung-uk Kim 6393e102307SJung-uk Kim** configure now uses autoconf's versioning information and configure 6403e102307SJung-uk Kim --help reports the bug-reporting address for flex 6413e102307SJung-uk Kim 6423e102307SJung-uk Kim** test suite now only reports success versus failure; reporting 6433e102307SJung-uk Kim skipped is problematic under the current setup 6443e102307SJung-uk Kim 6453e102307SJung-uk Kim** compilation with --disable-nls now works 6463e102307SJung-uk Kim 6473e102307SJung-uk Kim** flex can now be built in a separate directory 6483e102307SJung-uk Kim 6493e102307SJung-uk Kim* version 2.5.6 6503e102307SJung-uk Kim 6513e102307SJung-uk Kim** gettext support added (from gettext 0.11) 6523e102307SJung-uk Kim 6533e102307SJung-uk Kim*** translations for ca, da, de, es, fr, ko, ru, sv, tr included 6543e102307SJung-uk Kim 6553e102307SJung-uk Kim** distribution now built under automake 1.6 and autoconf 2.53 6563e102307SJung-uk Kim 6573e102307SJung-uk Kim** command-line option parsing happens differently now: 6583e102307SJung-uk Kim 6593e102307SJung-uk Kim*** Added long option parsing 6603e102307SJung-uk Kim 6613e102307SJung-uk Kim*** Options -n and -c, previously deprecated, now simply do nothing 6623e102307SJung-uk Kim 6633e102307SJung-uk Kim*** Options are now parsed left to right 6643e102307SJung-uk Kim 6653e102307SJung-uk Kim** added a number of new options 6663e102307SJung-uk Kim 6673e102307SJung-uk Kim*** All positive %options are now accessible from the command line 6683e102307SJung-uk Kim 6693e102307SJung-uk Kim*** Added option -D, to define a preprocessor symbol 6703e102307SJung-uk Kim 6713e102307SJung-uk Kim*** Added option --header=FILE to specify a C .h file to generate 6723e102307SJung-uk Kim 6733e102307SJung-uk Kim*** added option --yywrap to call yywrap on EOF 6743e102307SJung-uk Kim 6753e102307SJung-uk Kim*** added option --yylineno to track line count in yylineno 6763e102307SJung-uk Kim 6773e102307SJung-uk Kim*** --yyclass=NAME name of C++ class when generating c++ scanners 6783e102307SJung-uk Kim 6793e102307SJung-uk Kim*** for long option names which are associated with existing short 6803e102307SJung-uk Kimoptions, see accompanying documentation 6813e102307SJung-uk Kim 6823e102307SJung-uk Kim*** new %option nounistd or command-line --nounistd added to prevent 6833e102307SJung-uk Kim flex from generating #include <unistd.h> on systems that don't 6843e102307SJung-uk Kim have that include file 6853e102307SJung-uk Kim 6863e102307SJung-uk Kim** Support for reentrant C scanners has been added 6873e102307SJung-uk Kim 6883e102307SJung-uk Kim*** Updated the manual with the new reentrant API 6893e102307SJung-uk Kim 6903e102307SJung-uk Kim*** Two new options %option reentrant (-R) and 6913e102307SJung-uk Kim%option reentrant-bison (-Rb) 6923e102307SJung-uk Kim 6933e102307SJung-uk Kim*** All globals optionally placed into struct yyglobals_t 6943e102307SJung-uk Kim 6953e102307SJung-uk Kim*** All access to globals replaced by macro invocations 6963e102307SJung-uk Kim 6973e102307SJung-uk Kim*** All functions optionally take one additional 6983e102307SJung-uk Kimargument, yy_globals 6993e102307SJung-uk Kim 7003e102307SJung-uk Kim*** New style for invoking reentrant scanner: 7013e102307SJung-uk Kimyylex_init(void** scanner ); 7023e102307SJung-uk Kimyylex( scanner ); 7033e102307SJung-uk Kimyylex_destroy( scanner ); 7043e102307SJung-uk Kim 7053e102307SJung-uk Kim*** Added get/set functions for members of struct yy_globals_t 7063e102307SJung-uk Kime.g., yyget_text, yyget_leng, etc 7073e102307SJung-uk Kim 7083e102307SJung-uk Kim*** Prefix substitution added for new functions 7093e102307SJung-uk Kim 7103e102307SJung-uk Kim*** Macro shortcuts to the lengthy get/set functions 7113e102307SJung-uk Kimprovided for use in actions, e.g., yytext, yyleng, etc 7123e102307SJung-uk Kim 7133e102307SJung-uk Kim*** Arbitrary, user-defined data, "yyextra", may be added to scanner 7143e102307SJung-uk Kim 7153e102307SJung-uk Kim** %option nomain no longer implies %option yywrap 7163e102307SJung-uk KimBut the inverse is still true 7173e102307SJung-uk Kim 7183e102307SJung-uk Kim** Developer test suite added 7193e102307SJung-uk Kim 7203e102307SJung-uk Kim*** TESTS/ directory has been added. Users can 7213e102307SJung-uk Kim'make test' in the TESTS directory to execute the test suite 7223e102307SJung-uk Kim 7233e102307SJung-uk Kim** Support for bison variables yylval and yylloc added 7243e102307SJung-uk Kim 7253e102307SJung-uk Kim** automake support for the build process 7263e102307SJung-uk Kim 7273e102307SJung-uk Kim** manual is now in texinfo/info format 7283e102307SJung-uk Kim 7293e102307SJung-uk Kim*** flex.1 removed from distribution 7303e102307SJung-uk Kim 7313e102307SJung-uk Kim** flex no longer generates C-language scanners with C++-style 7323e102307SJung-uk Kim comments 7333e102307SJung-uk Kim 7343e102307SJung-uk Kim** flex now generates scanners in c++ which are compatible with 7353e102307SJung-uk Kim recent c++ compilers 7363e102307SJung-uk Kim 7373e102307SJung-uk Kim** flex input scanner now recognizes '\r' as an EOL character 7383e102307SJung-uk Kim 7393e102307SJung-uk KimSee the file ONEWS for changes in earlier releases. 7403e102307SJung-uk Kim 741*7e382390SJung-uk KimSee the file COPYING for copying conditions. 742*7e382390SJung-uk Kim 7433e102307SJung-uk KimLocal Variables: 7443e102307SJung-uk Kimmode: text 7453e102307SJung-uk Kimmode: outline-minor 7463e102307SJung-uk Kimend: 747