flexc++ (0.98.00)

  * Implemented the --case-insensitive option (and directive), generating a
    scanner ignoring letter casing.

  * Several cosmetic changes were implemented

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 11 May 2012 13:59:54 +0200

flexc++ (0.97.30)

  * This version depends on Bobcat >= 3.00.00

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 03 May 2012 21:35:05 +0200

flexc++ (0.97.20)

  * George Danchev noticed that flexc++ created files even though parsing
    failed. This flaw's repaired in this release

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 20 Apr 2012 16:33:01 +0200

flexc++ (0.97.10)

  * Added missing std:: prefixes to numeric_limits calls in skeletons/flexc++
    and generator/tailcount.cc.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 20 Apr 2012 14:04:55 +0200

flexc++ (0.97.00)

  * Added the --regex-calls option showing the order in which elements from
    regular expressions are processed.

  * Added the --matched-rules option showing the number of matched rules, just
    before their actions are executed.

  * Replaced '#include <climits>' by '#include <limits>' and '..._MAX'
    constants by 'numeric_limits<...>::max()' calls. The same holds true for
    flexc++'s skeletons. 

  * The files parser/parserbase.h and parser/parse.cc were added to the
    archive, and the check for changes in the parser's grammar was removed
    from 'build program' to remove the program's build process dependency on
    bisonc++. To recreate the program for a new parser use 'build parser'.

  * Skeletons can use fields (again) at $insert directives to specifiy
    subcases. This is documented in generator/insert.cc, and used to generate
    option specific code for --matched-rules (see skeletons/flexc++.cc at
    debug.R). 

  * Flexc++ itself now uses a parser defining and using polymorphic semantic
    values. To recreate the parser (but note that this is *not* required when
    compiling flexc++ from the source archive), bisonc++ > 4.00.00 is
    required. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 14 Apr 2012 13:44:00 +0200

flexc++ (0.96.00)

  * Harold Bruintje noticed that rules explicitly assigned to the INITIAL mini
    scanner are also used by other %s (inclusive) mini scanners. This is in
    violation of the description given in 

        http://pubs.opengroup.org/onlinepubs/7908799/xcu/lex.html

    stating

        `When the generated scanner is in a %s state, patterns with no state
        specified will be also active' 

    which excludes <INTIAL> regex rules.

    This release implements %s mini scanner handling as described in lex.html.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 29 Mar 2012 09:02:57 +0200

flexc++ (0.95.00)

  * Removed %max-depth again: should only be an option, not a directive 

  * Starting this release all release tags (using names that are identical to
    the version number, so for this release the tag is 0.95.00) are signed to
    allow authentication.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 27 Feb 2012 13:28:44 +0100

flexc++ (0.94.00)

  * Added the --max-depth option defining the maximum lexical scanner
    specification file depth (and %max-depth directive).

  * Using a vector rather than a a stack to store stacked streams, to allow
    the Scanner class (read) access to the number of stacked files and their
    names. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 23 Feb 2012 11:53:06 +0100

flexc++ (0.93.00)

  * Redesigned the interactive scanner: no additional protected data members,
    an additional member (interactiveLine__) now handles the line-refresh from
    the input stream.

  * In interactive mode, lineNr() increments at each next interactive line.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 20 Feb 2012 09:58:34 +0100

flexc++ (0.92.00)

  * Added 'leave(int retValue)' member that can be called from members called
    from the scanner specification's actions to end the action, returning
    'retValue' from 'lex()'

  * Sanitized switch- and pushStream members for interactive and
    non-interactive scanners

  * Added missing d_atBOL = true assignment in pushStream, detected by Jurjen
    Bokma.

  * All man-pages combined into one man-page: flexc++(1).

  * Implemented --filenames, --print-tokens and --own-tokens
    options/directives 

  * Manual and man-pages updated

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 17 Feb 2012 14:13:27 +0100

flexc++ (0.91.00)

  * Jurjen Bokma found a segfault in action blocks at the end of files not
    ending in '\n'. Caused by Input's d_in == 0 after an earlier EOF
    detection, and then calling d_in->get(). Repaired by testing for d_in == 0

  * Added --target-directory option (and directive) to define where the
    generated files should be written if not at the default (lexer) location.

  * The earlier minor versions should have been .9 rather than .09. Same for
    the 0.08 series of changes. Version now (properly) set to 0.9x.yy.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 11 Feb 2012 13:44:10 +0100

flexc++ (0.09.52)

  * The Scannner(std::string infile, std::string outfile) and 
    switchStreams(std::string infile, std::string outfile) members now also 
    accept outfile == "", in which case std::cerr is used as the scanner's
    output stream.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 08 Feb 2012 11:48:28 +0100

flexc++ (0.09.51)

  * Rebased release.yo in flexc++'s main directory, and no longer in its
    parent, where it would contaminate  Debian's area outside of flexc++'s
    build-area. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 06 Feb 2012 21:11:42 +0100

flexc++ (0.09.50)

  * At the beginning of its Debian life-cycle, flexc++'s changelog is
    maintained again. This changelog does not reflect changes beyond version
    0.08.04 and before 0.09.50. Logs for those versions can be obtained using
    git. Currently (and until further notice) the primary git archive location
    is http://www.icce.rug.nl/git/flexc++.git. Flexc++'s official web location
    is http://www.flexcpp.org (badly in need of an update, though).

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 06 Feb 2012 16:55:18 +0100

flexc++ (0.08.04)

  * Implemented the %interactive option and --interactive flag to generate an
    interactive scanner.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 15 Jan 2012 13:07:52 +0100

flexc++ (0.08.03)

  * Repaired Jean-Paul's segfault for a simple scanner:
        .*/b
        .*
  * Standardized the version to format v.mm.ss

  * This version after merging fbb-wip Sat Jan 14 11:48:38 2012 +0100
    (9ecf7b694c7e3f37a1e8f3d46b25e96c5d5e3d90) and master, a.k.a. tag
    0.7.1-pre

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 14 Jan 2012 13:43:22 +0100

flexc++ (0.8.2)

  * Added ScannerBase::switchStreams(istream &, ostream &) and updated the
    man-pages accordingly

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 30 Dec 2011 17:32:16 +0100

flexc++ (0.8.1)

  * Added missing ' ' and ':' characters to character-classes

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 29 Dec 2011 22:23:50 +0100

flexc++ (0.8.0)

  * Rebuilt of flexc++, see the git logs for details. Intermediate version
    updates not separately logged before this date.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 11 Jul 2011 12:58:12 +0200

flexc++ (0.0.0)

  * Project Start.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 18 Apr 2008 23:29:36 +0200

