www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-announce/2010/01/11/00:39:36

Message-Id: <201001110539.o0B5dZ6a024391@delorie.com>
X-Authenticated: #27081556
X-Provags-ID: V01U2FsdGVkX1/T4DcRqvvTtLTETnFIewwnVT1GJIfEjS/Nb/Hod6
656HuCr3NHkXWW
From: Juan Manuel Guerrero <juan DOT guerrero AT gmx DOT de>
To: djgpp-announce AT delorie DOT com
Subject: ANNOUNCE: DJGPP port of GNU Bison 2.4.1 uploaded.
Date: Sun, 10 Jan 2010 19:37:16 +0100
X-Y-GMX-Trusted: 0
X-FuHaFi: 0.49

This is a port of GNU Bison 2.4.1 to MSDOS/DJGPP.

  Bison is a Yacc compatible parser generator.
  This is mostly a porting and bug-fix release; the only change to
  user-visible behavior is to the YYRECOVERING macro in GLR grammars,
  as noted in the user-visible change list.


  DJGPP specific changes.
  =======================

  - The DJGPP port of Bison offers LFN and SFN support depending on which OS it
    is running.  If LFN support is available or not is determinated at run time.
    If LFN support is available (DOS session under Win9X), the standard posix
    file name extensions will be used. These are: y.tab.c, y.tab.c++, y.tab.h,
    y.output, etc. If only SFN support is available (plain DOS), then the
    standard MSDOS short file names will be used. These are: y_tab.c, y_tab.h,
    y.out, etc.
  - It should be noticed that this version of Bison uses the m4 program as a
    backend to generate the parser file (e.g. y_tab.c, etc.) from the skeleton
    files. This means that m4 *must* be installed and available when bison's is
    invoked or bison will not be able to generate the parser file. m4 will use
    a couple m4 scripts that will be installed in /dev/env/DJDIR/share/bison.
    This version of bison requires at least m4 1.4.3 available as m4-143b.zip
    at ftp://ftp.delorie.com and mirrors.
  - It should also be noticed that the two skeleton files bison.simple and
    bison.hairy are no longer used nor supported anymore. This applies also to
    the two environment variables BISON_HAIRY and BISON_SIMPLE.
    Those variables are *no* longer honored at all. This implies that you can
    no longer use these variables to point bison to an alternative skeleton file.
    Use the command line option `-S' instead.
  - The skeleton file bison.simple is now called yacc.c and is an m4 script.
    Please notice that the grammar type coded in the skeleton file bison.hairy
    is no longer supported by the bison maintainer. The other two skeleton
    files supported by this bison version are glr.c and lalr1.cc. The first one
    is a generalized LR C parser based on Bison's LALR(1) tables and the
    second one is a experimental C++ parser class.

  As usual, all djgpp specific files (config.bat, diffs, README files, etc.)
  are located in the /djgpp subdir.


  Here is a list of user-visible changes in version 2.4.1. taken from the NEWS file:

* Changes in version 2.4.1 (2008-12-11):

** In the GLR defines file, unexpanded M4 macros in the yylval and yylloc
   declarations have been fixed.

** Temporary hack for adding a semicolon to the user action.

  Bison used to prepend a trailing semicolon at the end of the user
  action for reductions.  This allowed actions such as

    exp: exp "+" exp { $$ = $1 + $3 };

  instead of

    exp: exp "+" exp { $$ = $1 + $3; };

  Some grammars still depend on this `feature'.  Bison 2.4.1 restores
  the previous behavior in the case of C output (specifically, when
  neither %language or %skeleton or equivalent command-line options
  are used) to leave more time for grammars depending on the old
  behavior to be adjusted.  Future releases of Bison will disable this
  feature.

** A few minor improvements to the Bison manual.

* Changes in version 2.4 (2008-11-02):

** %language is an experimental feature.

  We first introduced this feature in test release 2.3b as a cleaner
  alternative to %skeleton.  Since then, we have discussed the possibility of
  modifying its effect on Bison's output file names.  Thus, in this release,
  we consider %language to be an experimental feature that will likely evolve
  in future releases.

** Forward compatibility with GNU M4 has been improved.

** Several bugs in the C++ skeleton and the experimental Java skeleton have been
  fixed.


  For futher information about GNU bison please read the info docs and NEWS file.



  The port has been configured, compiled and tested on a WinXP Prof SP3 system
  with LFN support using stock djdev204, gcc442 and bsh205bbr3.  To be able to
  compile the sources you must fix the "_rdtsc" issue, this means that you have
  to change the following lines in your /dev/env/DJDIR/include/time.h like this:
   < unsigned long long _rdtsc(void);
   ---
   > static unsigned long long _rdtsc(void);

  Please also note that the testsuite will only work if LFN are available.  All
  tests concerning java and doxygen will be skipped.  It should be noticed that
  all tests from the testsuite checking g++ specific features fail with an error
  message like this:
    c:/djgpp-2.04/bin/ld.exe: cannot find -lgcc
    collect2: ld returned 1 exit status
  This happens always when the testsuite ist invoked from the Makefile like
  this:
    make check
  If the same testsuite is startet from inside the /tests directory like this:
    sh ./testsuite
  the testsuite passes flawless.  I was not able to figure out what is wrong
  with the Makefile.  The port has mostly testet for 2.04 and very little for
  2.03.




  The port consists of the usual three packages that have been compiled
  using stock djdev203 and that can be downloaded from ftp.delorie.com
  and mirrors as (timestamp 2010-01-10):

    Bison 2.4.1 binary, info and man format documentation:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/bsn241b.zip

    Bison 2.4.1 dvi, html, ps and pdf format documentation:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/bsn241d.zip

    Bison 2.4.1 source:
    ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/bsn241s.zip


  For the convenience of the WinXP users the binaries has been produced
  a second time using the djdev204 beta library. This package is available
  at ftp.delorie.com and mirrors as (timestamp 2010-01-10):

   Bison 2.4.1 binary, info and man format documentation:
   ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/bsn241b.zip


  Send GNU bison specific bug reports to <bug-bison AT gnu DOT org>.
  Send suggestions and bug reports concerning the DJGPP port to
  comp.os.msdos.djgpp or <djgpp AT delorie DOT com>.


Enjoy.

        Guerrero, Juan Manuel <juan DOT guerrero AT gmx DOT de>

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019