JFlex Changelog

What's new in JFlex 1.6.1

Mar 17, 2015
  • JFlex development, wiki, and issue tracker moved to https://github.com/jflex-de/
  • Fixed issue #130, "in caseless mode, chars in regexps not accepted caselessly":
  • Caseless option works again as intended.
  • Fixed issue #131, "re-enable scanning interactively or from a network byte stream":
  • JFlex now throws an IOException when a Reader returns 0 characters.
  • New example, shows how to deal with Readers that return 0 characters.
  • Command line scripts work again in repository version (contributed by Emma Strubell)
  • New options `--warn-unused` and `--no-warn-unused` that control warnings about unused macros.
  • Fixed issue #125: `%apiprivate` and `%cup2` switches now no longer incompatible
  • Fix issue #133, "Error in skeleton.nested":
  • Empty-string matches were taking precedence over `EOF` and caused non-termination.
  • Now `EOF` is counted as the highest-priority empty match.
  • New warning when an expression matches the empty string (can lead to non-termination).

New in JFlex 1.6.0 (Jun 20, 2014)

  • Unicode 7.0 is supported.
  • In %unicode mode, supplementary code points are now handled properly.
  • Regular expressions are now code-point based, rather than code-unit/ char based.
  • Input streams are read as code point sequences properly paired surrogate code units are read as a single character.
  • All supported Unicode properties now match supplementary characters when Unicode 3.0 or above is specified, or when no version is specified, causing the default Unicode version, Unicode 7.0 in this release, to be used.
  • New \u{...} escape sequence allows code points (and whitespace-separated sequences of code points) to be specified as 1-6 hexadecimal digit values.
  • Characters in matches printed in �bug mode are now Unicode escaped (\uXXXX) when they are outside the range 32..127.
  • fixed bug #127, detect javadoc class comment when followed by annotation(s)
  • removed the "switch" and "table" code generation options
  • By default no InputStream constructor is included in the generated scanner. The capability to include one is deprecated and will be removed in JFlex 1.7.

New in JFlex 1.5.1 (Mar 28, 2014)

  • fixed bug #126, problem calling ./jflex start scripts
  • fixed bug #125, minor documentation flaws
  • further documentation and website updates
  • JFlex now reports the correct version string
  • added support for CUP2 with %cup2 switch, based on patch by Andreas Wenger

New in JFlex 1.5.0 (Mar 28, 2014)

  • the "switch" and "table" code generation options are deprecated
  • and will be removed in JFlex 1.6
  • the JFlex license has been changed from GPL to BSD.
  • updated JFlex to CUP version 0.11a.
  • changed the build from Ant to Maven.
  • JFlex now mostly conforms with Unicode Regular Expressions UTS#18
  • Basic Unicode Support Level 1. Supplementary code points (above
  • the Basic Multilingual Plane) are not yet supported.
  • new meta characters supported: `\s, \S, \d, \D, \w, \W`.
  • nested character sets now supported, e.g. [[[ABC]D]E[FG]]
  • new character set operations supported: union (e.g. [A||B]), intersection (e.g.
  • [A&&B]), set-difference (e.g. [A--B]), and symmetric difference (e.g. [A~~B]).
  • the meaning of the dot (".") meta character has been changed from `[^\n]` to
  • `[^\n\r\u000B\u000C\u0085\u2028\u2029]`. Use the new `--legacydot` option to
  • cause "." to be interpreted as `[^\n]`.
  • new `\R` meta character matches any newline:
  • `"\r\n" | [\n\r\u000B\u000C\u0085\u2028\u2029]`.
  • new option --noinputstreamctor to not include an InputStream
  • constructor in the generated scanner.
  • %include can now be used in the rules section (bug #116)
  • fixed bug #105 & #106 (yychar and zzAtBOL should be reset for nested input streams)
  • fixed bug #107 (could not match input for empty string matches.)
  • fixed bug #110 & #118 (properly update zzFin when reallocating zzBuffer)
  • fixed bug #114 (noncompileable scanner generation when default locale is Turkish)
  • fixed bug #113 (zzEOFDone not included with pushed nested stream state)
  • fixed bug #103 (can't build examples/java/)
  • fixed bug #104 (impossible char class range should trigger syntax error)

New in JFlex 1.4.3 (Feb 3, 2009)

  • fixed bug #2018299 (lookahead syntax error)
  • fixed bug #2010261 (min_int in Java example scanner)
  • fixed bug #2007221 (zzEOFDone not reset in yyreset(Reader))
  • fixed bug #1999301 (%type and %int at the same time should produce error msg)