bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bison 1.49a released


From: Akim Demaille
Subject: Bison 1.49a released
Date: 02 May 2002 11:13:07 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp)

The Bison team is happy to present its 1.49a snapshot.

Bison 1.50 is far from being ready for a release, nevertheless, we
felt a snaphot was needed.

First because there are many deep changes in the automaton generator
itself.  Although we have already instensively and extensively used it
on several different projects, it might be possible that some obscure
bug remains.  Therefore, we would really appreciate that you use it on
your preferred tool, and observe it behaves properly.

Second, because there are some new features which are needed by some
of our users, especially it's ability to cope with very large
grammars.

Third, because we have a prototype of C++ output.  Use -S bison.c++ to
experiment.  It is not documented yet, as the interface might change,
but if you suscribe to Bison lists (especially address@hidden) you
will get all the information you need to play with this C++ output.

And finally, to let people working on extensions of Bison that they
must not work on 1.35: it is dead.  Rather, 1.5x aims at making such
extensions easier, and it is the actually craddle where such
extensions should be implemented.

The future of Bison looks shining, several major new features are
coming.  We hope you'll get as fun using it as we had improving it.

        Akim, Paul, Robert.

  ftp://alpha.gnu.org/gnu/bison/bison-1.49a.tar.gz   (862 kB)
  ftp://alpha.gnu.org/gnu/bison/bison-1.49a.tar.bz2  (708 kB)

Here are the MD5 and SHA1 signatures for the compressed tar files:

f80fbecd6fd817dfe2a4abbf07ec8ea4  bison-1.49a.tar.gz
f5048c856ca1f47de72289eec905b317  bison-1.49a.tar.bz2
993d6b08b957d969fb6fd5689ddcd0e2d7f27141  bison-1.49a.tar.gz
9a6c9e2d22a2855b9b1fa183b7e9eeeee8d6dba7  bison-1.49a.tar.bz2

NEWS:
Changes in version 1.49a:

* Undefined token
  The undefined token was systematically mapped to 2 which prevented
  the use of 2 from the user.  This is no longer the case.

* Undefined token
  If yylex returned a code out of range, yyparse could die.  This is
  no longer the case.

* Error token
  According to POSIX, the error token should be numbered as 256.
  Bison extends this requirement by making it a preference: *if* the
  user specified that one of her tokens is numbered 256, then error
  will be mapped onto another number.

* Large grammars
  Are now supported (large token numbers, large grammar size (= sum of
  the LHS and RHS lengths), large LALR tables).

* The initial rule is explicit.
  Bison used to play hacks with the initial rule, which the user does
  not write.  It is now explicit, and visible in the reports and
  graphs as rule 0.

* Useless rules are actually removed.
  Before, Bison reported the useless rules, but, although not used,
  included them in the parsers.

* False `Token not used' report fixed.
  On a grammar such as

           %token useless useful
           %%
           exp: '0' %prec useful;

  where a token was used to set the precedence of the last rule,
  bison reported both `useful' and `useless' as useless tokens.

* Revert the C++ namespace changes introduced in 1.31, as they caused too
  many portability hassles.

* Items overflow
  Bison no longer dumps core when there are too many items, it just
  dies.

* Token end-of-file
  The token end of file may be specified by the user, in which case,
  the user symbol is used in the reports, the graphs, and the verbose
  error messages instead of `$', which remains being the defaults.
  For instance
     %token YYEOF 0
  or
     %token YYEOF 0 "end of file"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]