1 | This is the file NEWS for the flex package. It records user -visible
|
---|
2 | changes between releases of flex.
|
---|
3 |
|
---|
4 | See the file COPYING for copying conditions.
|
---|
5 |
|
---|
6 | * version 2.5.33 released 2006-2-20
|
---|
7 |
|
---|
8 | ** all flex resources are now to be found from the website at
|
---|
9 | http://flex.sourceforge.net/
|
---|
10 |
|
---|
11 | ** there was no release 2.5.32 published
|
---|
12 |
|
---|
13 | ** numerous bug and security fixes
|
---|
14 |
|
---|
15 | ** new nl, vi, sv, ro, po, ga, ca, fr, tr translations from the translation project
|
---|
16 |
|
---|
17 | ** upgrade to use gettext 0.12 (this now makes the "pdf" and "ps"
|
---|
18 | targets in the build system able to be run successfully)
|
---|
19 |
|
---|
20 | * version 2.5.31 released 2003-4-1
|
---|
21 |
|
---|
22 | ** remove --enable-maintainer-mode configure option; none of the
|
---|
23 | Makefiles were using it and it can be unduely confusing
|
---|
24 |
|
---|
25 | * version 2.5.30 released 2003-4-1
|
---|
26 |
|
---|
27 | ** yylineno is per-buffer in reentrant scanners
|
---|
28 |
|
---|
29 | ** added %top directive for placing code at the top of the generated
|
---|
30 | scanner; see manual for details
|
---|
31 |
|
---|
32 | ** flex now uses m4 to generate scanners; while this means that
|
---|
33 | scanners are more readable, it means that flex requires m4 to be
|
---|
34 | installed; see manual for details
|
---|
35 |
|
---|
36 | * version 2.5.29 released 2003-3-5
|
---|
37 |
|
---|
38 | ** Automatic stack management for multiple input buffers in C and C++ scanners
|
---|
39 |
|
---|
40 | ** moved the flex documentation to a new doc/ subdirectory
|
---|
41 |
|
---|
42 | ** cleanups to the yy namespace
|
---|
43 |
|
---|
44 | * version 2.5.28 released 2003-2-12
|
---|
45 |
|
---|
46 | ** flex is now hosted at sourceforge
|
---|
47 |
|
---|
48 | ** Fixed trailing slash bug in YY_INPUT macro def
|
---|
49 |
|
---|
50 | ** Flex now warns if always-interactive is specified with fast or full
|
---|
51 |
|
---|
52 | * version 2.5.27 released 2003-1-21
|
---|
53 |
|
---|
54 | ** flex now works with recent bison versions
|
---|
55 |
|
---|
56 | ** new pt_br translation from the translation project
|
---|
57 |
|
---|
58 | * version 2.5.26 released 2003-1-14
|
---|
59 |
|
---|
60 | ** Fixed table deserialization bug on big-endian archs. Patch sent from Bryce Nichols <bryce@bnichols.org>
|
---|
61 |
|
---|
62 | ** yyleng has proper declarations now; this caused flex to generate
|
---|
63 | unusable scanners for some programs
|
---|
64 |
|
---|
65 | ** the flex distribution now includes a spec file suitable for use
|
---|
66 | with rpm
|
---|
67 |
|
---|
68 | ** some more c++ fixes
|
---|
69 |
|
---|
70 | ** new es translation from the translation project
|
---|
71 |
|
---|
72 | ** slight tweeks to the flex_int*_t types
|
---|
73 |
|
---|
74 | ** flex now warns about pattern ranges that might be ambiguous when
|
---|
75 | generating a case-insensitive scanner
|
---|
76 |
|
---|
77 |
|
---|
78 | * version 2.5.25 released 2002-12-2
|
---|
79 |
|
---|
80 | ** flex now uses flex_int*_t types. For C99 systems, they are just the
|
---|
81 | int*_t types; for non-C99 systems, we just make some typedefs
|
---|
82 |
|
---|
83 | ** new pt_br translation from the translation project
|
---|
84 |
|
---|
85 | * version 2.5.24 released 2002-11-25
|
---|
86 |
|
---|
87 | * more portability fixes
|
---|
88 |
|
---|
89 | ** the manual continues to be updated and edited, but it's still got a
|
---|
90 | ways to go
|
---|
91 |
|
---|
92 | ** it is possible to have multiple c++ scanners in the same program again
|
---|
93 |
|
---|
94 | ** new turkish translation from the translation project
|
---|
95 |
|
---|
96 | * version 2.5.23 released 2002-10-21
|
---|
97 |
|
---|
98 | ** more portability fixes
|
---|
99 |
|
---|
100 | ** the manual includes a title page and a table-of-contents when printed
|
---|
101 |
|
---|
102 | ** the test suite can be run with "make check" from the top-level
|
---|
103 | directory
|
---|
104 |
|
---|
105 | ** configure now accepts the --enable-maintainer-mode option
|
---|
106 |
|
---|
107 | ** gettext functionality is now only available externally
|
---|
108 |
|
---|
109 | ** the constant FLEX_BETA is defined if flex is a beta release
|
---|
110 |
|
---|
111 | ** the script create-test was not included in the distribution and it
|
---|
112 | should have been
|
---|
113 |
|
---|
114 | * version 2.5.22 released 2002-10-10
|
---|
115 |
|
---|
116 | ** more portability fixes around how we get ahold of the integral
|
---|
117 | types; there is a constant FLEX_NEED_INTEGRAL_TYPE_DEFINITIONS
|
---|
118 | which you should define if you don't have the <inttypes.h> header
|
---|
119 | file (after you complain to your C vendor for not providing a
|
---|
120 | reasonable C environment)
|
---|
121 |
|
---|
122 | ** more test suite cleanups; in particular, the test suite should run
|
---|
123 | correctly when build from a different directory
|
---|
124 |
|
---|
125 | ** upgraded automake to 1.7 and consequently autoconf to 2.54; this
|
---|
126 | means, among other things, that there is some support for
|
---|
127 | formatting the manual in postscript and pdf in the distributed
|
---|
128 | Makefile.in (and therefore in the Makefile built by configure)
|
---|
129 |
|
---|
130 | ** the flex.1 manpage is generated by help2man; (this has been true
|
---|
131 | for quite a while but was not listed here)
|
---|
132 |
|
---|
133 | ** flex now includes three defined constants to indicate which version
|
---|
134 | of flex generated a scanner (YY_FLEX_{MAJOR,MINOR,SUBMINOR}_VERSION)
|
---|
135 |
|
---|
136 | ** flex tries its best to output only the relevant portions of the
|
---|
137 | skeleton when generating a scanner, thus avoiding as much
|
---|
138 | conditional compilation as possible
|
---|
139 |
|
---|
140 | * version 2.5.21 released 2002-9-17
|
---|
141 |
|
---|
142 | ** one of the tests in the test suite broke the dist target
|
---|
143 |
|
---|
144 | * version 2.5.20 released 2002-9-16
|
---|
145 |
|
---|
146 | ** A flex scanner has the ability to save the DFA tables to a file,
|
---|
147 | and load them at runtime when needed; see the manual for details
|
---|
148 |
|
---|
149 | ** Added %option bison-bridge (--bison-bridge)
|
---|
150 |
|
---|
151 | ** Removed %option reentrant-bison/--reentrant-bison/-Rb
|
---|
152 |
|
---|
153 | ** yylineno is present in all scanners; Modified nasty performance
|
---|
154 | penalty warning with yylineno in documentation
|
---|
155 |
|
---|
156 | ** test-table-opts is now run last in the test suite because it's so fat
|
---|
157 |
|
---|
158 | ** flex can, to some extent, diagnose where internal problems occur
|
---|
159 |
|
---|
160 | ** new translations from the translation project: fr, ca, de, ru, sv
|
---|
161 |
|
---|
162 | **Flex generates C99 defs now; see YY_TRADITIONAL_FUNC_DEFS in the
|
---|
163 | manual if that's not a good thing for you
|
---|
164 |
|
---|
165 | * version 2.5.19 released 2002-9-5
|
---|
166 |
|
---|
167 | ** prevent segfault on input lines which are longer than the allocated
|
---|
168 | space (problem report from Manoj Srivastava
|
---|
169 | <srivasta@golden-gryphon.com>)
|
---|
170 |
|
---|
171 | ** Changed option 'header' to 'header-file'
|
---|
172 |
|
---|
173 | * version 2.5.18 released 2002-9-4
|
---|
174 |
|
---|
175 | ** portability fixes for integer constants and in the way the test
|
---|
176 | suite reports its results
|
---|
177 |
|
---|
178 | ** the test for bison was reporting bison missing when it was, in
|
---|
179 | fact, found
|
---|
180 |
|
---|
181 | ** if we don't find GNU indent, we're more careful when we're not
|
---|
182 | finding it
|
---|
183 |
|
---|
184 | * version 2.5.17 released 2002-8-29
|
---|
185 |
|
---|
186 | ** more portability fixes
|
---|
187 |
|
---|
188 | ** updated config.sub and config.guess
|
---|
189 |
|
---|
190 | ** flex is indented by GNU indent (this was done earlier but not
|
---|
191 | explicitly documented)
|
---|
192 |
|
---|
193 | * version 2.5.16 released 2002-8-28
|
---|
194 |
|
---|
195 | ** c++ scanners compile again
|
---|
196 |
|
---|
197 | ** there is now an indent target in the top-level Makefile; configure
|
---|
198 | checks for GNU indent which is required for proper operation of the
|
---|
199 | indent target
|
---|
200 |
|
---|
201 | ** some more portability fixes were made
|
---|
202 |
|
---|
203 | ** %options and invocation sections of manual merged
|
---|
204 |
|
---|
205 | ** a c++ test was added to the test suite
|
---|
206 |
|
---|
207 | ** we're trying to clean up more files in the test suite's make clean
|
---|
208 | targets
|
---|
209 |
|
---|
210 | * version 2.5.15 released 2002-8-21
|
---|
211 |
|
---|
212 | ** reject-state buffer is now dynamically allocated and REJECT buffer
|
---|
213 | variables are reentrant-safe
|
---|
214 |
|
---|
215 | ** manual now discusses memory usage
|
---|
216 |
|
---|
217 | ** skeleton now processed by m4 before mkskel.sh; (this only matters
|
---|
218 | if you want to change the skeleton or if you're doing flex development)
|
---|
219 |
|
---|
220 | ** zh_cn translation added from translation project
|
---|
221 |
|
---|
222 | ** a bug that caused a segfault has now been fixed
|
---|
223 |
|
---|
224 | ** the test suite now respects the usual CFLAGS, etc. variables
|
---|
225 |
|
---|
226 | ** removed some warnings which some tests trigggered with the -s option
|
---|
227 |
|
---|
228 | ** the flex-generated header file now tries to be smarter about
|
---|
229 | conditionally including start conditions
|
---|
230 |
|
---|
231 | ** tables code omitted from generated scanner when not used
|
---|
232 |
|
---|
233 | * version 2.5.14 released 2002-8-15
|
---|
234 |
|
---|
235 | ** the tests using the reentrant c scanner as c++ were reworked
|
---|
236 | slightly to be sure that the c++ was enforced
|
---|
237 |
|
---|
238 | ** de translation now included in the distribution
|
---|
239 |
|
---|
240 | ** various portability fixes regarding nls support, c++ include
|
---|
241 | headers, etc.
|
---|
242 |
|
---|
243 | * version 2.5.13 released 2002-8-15
|
---|
244 |
|
---|
245 | ** the header file output with %option header is now much smaller
|
---|
246 |
|
---|
247 | ** Fixed type mismatch in printf in scanner skeleton
|
---|
248 |
|
---|
249 | ** yylex_init now reports errors
|
---|
250 |
|
---|
251 | * version 2.5.12 released 2002-8-8
|
---|
252 |
|
---|
253 | ** updated gettext support to 0.11.5
|
---|
254 |
|
---|
255 | ** new fr translation from the translation project
|
---|
256 |
|
---|
257 | ** bison is no longer needed to build flex; If you are building flex
|
---|
258 | from a release (i.e., not from a cvs snapshot), then you don't need
|
---|
259 | to have a pre-built lex around either (unless you modify scan.l, of
|
---|
260 | course); (This has been true for some time, but was not mentioned
|
---|
261 | here.)
|
---|
262 |
|
---|
263 | * version 2.5.11 released 2002-7-31
|
---|
264 |
|
---|
265 | ** Fixed bug where yyless did not consider yylineno
|
---|
266 |
|
---|
267 | ** the yylineno performance hit is now gone
|
---|
268 |
|
---|
269 | ** fixed some typos in the manual and we now include texinfo.tex in
|
---|
270 | the distribution
|
---|
271 |
|
---|
272 | ** traditional prototypes output for C scanners, controlled by a
|
---|
273 | preprocessor symbol; see documentation for details
|
---|
274 |
|
---|
275 | * version 2.5.10 released 2002-7-24
|
---|
276 |
|
---|
277 | ** yy_globals renamed to yyscanner and yy_globals_t renamed to
|
---|
278 | yy_guts_t
|
---|
279 |
|
---|
280 | ** added dist-bzip2 option to Makefile.am so we now produce a bzip2'd
|
---|
281 | archive in addition to the standard gzip archive
|
---|
282 |
|
---|
283 | * version 2.5.9
|
---|
284 |
|
---|
285 | ** new tests in test suite: test-mem-{nr,r}, test-posix,
|
---|
286 | test-posixly-correct, test-debug-{nr,r}
|
---|
287 |
|
---|
288 | ** made changes to work with gcc-3.2 development code
|
---|
289 |
|
---|
290 | ** ability to choose which memory functions are used in flex
|
---|
291 |
|
---|
292 | ** new yylex_destroy() function for the non-reentrant scanner
|
---|
293 |
|
---|
294 | ** new handling of POSIXLY_CORRECT environment variable
|
---|
295 |
|
---|
296 | ** the test suite now has its copyrights explicitly described
|
---|
297 |
|
---|
298 | ** new ca, de, fr, ru, sv, tr translations
|
---|
299 |
|
---|
300 | * version 2.5.8
|
---|
301 |
|
---|
302 | ** a new --posix option generates scanners with posix-style abc{1,3}
|
---|
303 | compatible parsing, see manual for the screwy details
|
---|
304 |
|
---|
305 | * version 2.5.7
|
---|
306 |
|
---|
307 | ** configure.in now includes a call to AC_PREREQ to enforce the
|
---|
308 | requirement for autoconf at least 2.50 (This only effects you if
|
---|
309 | you're doing flex development.)
|
---|
310 |
|
---|
311 | ** configure now uses autoconf's versioning information and configure
|
---|
312 | --help reports the bug-reporting address for flex
|
---|
313 |
|
---|
314 | ** test suite now only reports success versus failure; reporting
|
---|
315 | skipped is problematic under the current setup
|
---|
316 |
|
---|
317 | ** compilation with --disable-nls now works
|
---|
318 |
|
---|
319 | ** flex can now be built in a separate directory
|
---|
320 |
|
---|
321 | * version 2.5.6
|
---|
322 |
|
---|
323 | ** gettext support added (from gettext 0.11)
|
---|
324 |
|
---|
325 | *** translations for ca, da, de, es, fr, ko, ru, sv, tr included
|
---|
326 |
|
---|
327 | ** distribution now built under automake 1.6 and autoconf 2.53
|
---|
328 |
|
---|
329 | ** command-line option parsing happens differently now:
|
---|
330 |
|
---|
331 | *** Added long option parsing
|
---|
332 |
|
---|
333 | *** Options -n and -c, previously deprecated, now simply do nothing
|
---|
334 |
|
---|
335 | *** Options are now parsed left to right
|
---|
336 |
|
---|
337 | ** added a number of new options
|
---|
338 |
|
---|
339 | *** All positive %options are now accessible from the command line
|
---|
340 |
|
---|
341 | *** Added option -D, to define a preprocessor symbol
|
---|
342 |
|
---|
343 | *** Added option --header=FILE to specify a C .h file to generate
|
---|
344 |
|
---|
345 | *** added option --yywrap to call yywrap on EOF
|
---|
346 |
|
---|
347 | *** added option --yylineno to track line count in yylineno
|
---|
348 |
|
---|
349 | *** --yyclass=NAME name of C++ class when generating c++ scanners
|
---|
350 |
|
---|
351 | *** for long option names which are associated with existing short
|
---|
352 | options, see accompanying documentation
|
---|
353 |
|
---|
354 | *** new %option nounistd or command-line --nounistd added to prevent
|
---|
355 | flex from generating #include <unistd.h> on systems that don't
|
---|
356 | have that include file
|
---|
357 |
|
---|
358 | ** Support for reentrant C scanners has been added
|
---|
359 |
|
---|
360 | *** Updated the manual with the new reentrant API
|
---|
361 |
|
---|
362 | *** Two new options %option reentrant (-R) and
|
---|
363 | %option reentrant-bison (-Rb)
|
---|
364 |
|
---|
365 | *** All globals optionally placed into struct yyglobals_t
|
---|
366 |
|
---|
367 | *** All access to globals replaced by macro invocations
|
---|
368 |
|
---|
369 | *** All functions optionally take one additional
|
---|
370 | argument, yy_globals
|
---|
371 |
|
---|
372 | *** New style for invoking reentrant scanner:
|
---|
373 | yylex_init(void** scanner );
|
---|
374 | yylex( scanner );
|
---|
375 | yylex_destroy( scanner );
|
---|
376 |
|
---|
377 | *** Added get/set functions for members of struct yy_globals_t
|
---|
378 | e.g., yyget_text, yyget_leng, etc
|
---|
379 |
|
---|
380 | *** Prefix substitution added for new functions
|
---|
381 |
|
---|
382 | *** Macro shortcuts to the lengthy get/set functions
|
---|
383 | provided for use in actions, e.g., yytext, yyleng, etc
|
---|
384 |
|
---|
385 | *** Arbitrary, user-defined data, "yyextra", may be added to scanner
|
---|
386 |
|
---|
387 | ** %option nomain no longer implies %option yywrap
|
---|
388 | But the inverse is still true
|
---|
389 |
|
---|
390 | ** Developer test suite added
|
---|
391 |
|
---|
392 | *** TESTS/ directory has been added. Users can
|
---|
393 | 'make test' in the TESTS directory to execute the test suite
|
---|
394 |
|
---|
395 | ** Support for bison variables yylval and yylloc added
|
---|
396 |
|
---|
397 | ** automake support for the build process
|
---|
398 |
|
---|
399 | ** manual is now in texinfo/info format
|
---|
400 |
|
---|
401 | *** flex.1 removed from distribution
|
---|
402 |
|
---|
403 | ** flex no longer generates C-language scanners with C++-style
|
---|
404 | comments
|
---|
405 |
|
---|
406 | ** flex now generates scanners in c++ which are compatible with
|
---|
407 | recent c++ compilers
|
---|
408 |
|
---|
409 | ** flex input scanner now recognizes '\r' as an EOL character
|
---|
410 |
|
---|
411 | See the file ONEWS for changes in earlier releases.
|
---|
412 |
|
---|
413 | Local Variables:
|
---|
414 | mode: text
|
---|
415 | mode: outline-minor
|
---|
416 | end:
|
---|