xref: /freebsd/contrib/flex/NEWS (revision 7e38239042df09edbbdc443ccb4825f9155c6bb7)
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