Accepted bisonc++ 1.5.0-1 (source)

Scott James Remnant scott at ubuntu.com
Fri Nov 17 02:10:52 GMT 2006


Accepted:
bisonc++ 1.5.0-1 was ACCEPTED.
	Component: universe Section: devel

Origin: Debian/unstable
Format: 1.7
Date: Thu,  16 Nov 2006 22:54:52 +0000
Source: bisonc++
Binary: bisonc++
Architecture: source
Version: 1.5.0-1
Distribution: feisty
Urgency: low
Maintainer: Frank B. Brokken <f.b.brokken at rug.nl>
Changed-By: Scott James Remnant <scott at ubuntu.com>
Description: 
 bisonc++   - Bison-style parser generator for C++ 
Closes: 391073
Changes: 
 bisonc++ (1.5.0-1) unstable; urgency=low
 .
   [ Frank B. Brokken (Tue, 31 Oct 2006 21:09:51 +0100)]
   * New upstream release
     (closes #395291)
 .
   [ George Danchev ]
   * build depend on yodl 2.04a-1 to avoid possible rawmacro bugs
   * install all README files
   * remove old bison-docs
   * added watch file
 .
 bisonc++ (1.4.0-3) unstable; urgency=low
 .
   [ George Danchev ]
   * build-depend on icmake >= 6.30-1 (Closes: #391073)
   * debhelper compat 5 - no changes needed
 .
 bisonc++ (1.4.0-2) unstable; urgency=low
 .
   [ George Danchev ]
   * changelog: upstream author, url locations, debian packaging copyright
   * rules: add get-orig-source and get-svn-trunk targets
   * control: add Tony Mancill <tmancill at debian.org> to uploaders
   * control: add Homepage: http://bisoncpp.sourceforge.net
 .
 bisonc++ (1.4.0-1) unstable; urgency=low
 .
   * New upstream release
 .
   [ Frank Brokken ]
   * Some leftover references to the Academic Free License were replaced by 
     references to the GPL.
   * Debian now uses icmake scripts, and INSTALL.im to define the locations 
     of the various targets. Added the directory ./icmake
   
   [ George Danchev ]
   * New build-depends: icmake and yodl >= 2.03
   * Architecture: any (of course)
 .
 bisonc++ (1.03-1) unstable; urgency=low
 .
   * License changed to the GNU GENERAL PUBLIC LICENSE. See the file
     `copyright'. 
 .
     According to the manual page, the debug-output generated by parsers
     created using the --debug option should be user-controllable through the
     `setDebug()' member. These feature is now actually implemented.
 .
     The usage info now correctly shows the -V flag as a synonym for the 
     --verbose option.
 .
     Introduced George Danchev <danchev at spnet.net> as uploader
 .
     From now on this file will only reflect Debian-specific changes. See the
     newly added file changelog for `upstream' changes. At this point, 
     changelog will be a copy of debian's changelog file.
 .
 bisonc++ (1.02) unstable; urgency=low
 .
   * Following suggestions made by George Danchev, this version was compiled by
     the unstable's g++ compiler (version >= 4.1), which unveiled several flaws
     in the library's class header files. These flaws were removed (i.e.,
     repaired).
 .
     In order to facilitate compiler selection, the compiler to use is defined
     in the INSTALL.cf file.
 .
     The debian control-files (i.e., all files under the debian subdirectory)
     were removed from the source distribution, which is now also named in
     accordance with the Debian policy. A diff.gz file was added.
 .
 bisonc++ (1.01) unstable; urgency=low
 .
   * Synchronized the version back to numbers-only, adapted the debian
     standards and the required bobcat library in the debian/control file.
     No implementation changes as compared to the previous version, but I felt 
     the need to join various sub-sub-versions back to just one standard
     version. 
 .
 bisonc++ (1.00a) unstable; urgency=low
 .
   * Debian's Linda and lintian errors, warnings and notes processed. No
     messages are generated by linda and lintian in this version.
 .
 bisonc++ (1.00) unstable; urgency=low
 .
   * Bisonc++ Version 1.00 has changed markedly as compared to its predecessor,
     bisonc++ 0.98.510.
     
     The main reason for upgrading to 1.00 following a year of testing the 0.98
     series is that the grammar analysis and lookahead propagation algorithms
     as used in bisonc++ 0.98.510 were either too cumbersome and contained some
     unfortunate errors.
     
     The errors were discovered during my 2005-2006 C++ class, where some
     students produced grammars which were simple, but were incorrectly
     analyzed by bisonc++ 0.98. It turned out that the lookahead (LA)
     propagation contained several flaws. Furthermore, a plain and simple bug
     assigned the last-used priority to terminal tokens appearing literally in
     the grammar (i.e., without explicitly defining them in a %token or
     comparable directive). A simple, but potentially very confusing bug.
     
     At the cosmetic level, the information produced with the --construction
     option was modified, aiming at better legibility of the construction
     process.
     
     The `examples' directory was reduced in size, moving most examples to a
     new directory `regression', which now contains a script `run' that can be
     used to try each of the examples below the `regression' directory. Some of
     the examples call `bison', so in order to run those examples `bison' must
     be installed as well. It usually is.
     
     A minor backward IN-compatibility results from a change in prototype of
     some private parser member functions. This should only affect exising
     Parser.h header files. Simply replacing the `support functions for
     parse()' section shown at the end of the header file by the following
     lines should make your header file up-to-date again. Note that bisonc++
     does not by itself rewrite Parser.h to prevent undoing any modifications
     you may have implemented in the parser-class header file:
     
         // support functions for parse():
             void executeAction(int ruleNr);
             void errorRecovery();
             int lookup();
             void nextToken();
     
     Please note that this version depends on bobcat 1.7.1 or beyond. If you
     compile bobcat yourself, then you may want to know that bobcat's Milter
     and Xpointer classes are not used by bisonc++, so they could optionally be
     left out of bobcat's compilation.
 .
 bisonc++ (0.98.510) unstable; urgency=low
 .
   * When no %union has been declared, no $$ warnings are issued anymore about
     non-exisiting types;
     When no %union has been declared a $<type>i or $<type>$ warning is issued
     about non-exisiting types.
 .
     The State table (in the generated parse.cc file) containing `PARSE_ACCEPT'
     was created with a `REDUCE' indication for grammars whose start symbol's
     production rules were non-repetitive. This was repaired in
     state/writestatearray.cc by setting the (positive) non-reduce indication
     for states using shifts and/or the accept state.
 .
     The logic in writeStateArray() was modifed: a separate ShiftReduce::Status
     variable is now used to store the possible actions: SHIFT, REDUCE or
     ACCEPT. The tables show `SHIFTS' if a state uses shifts; `ACCEPTS' if a
     state contains PARSE_ACCEPT; and `REDUCE' otherwise.
 .
 bisonc++ (0.98.500) unstable; urgency=low
 .
   * Handling of $<type>i and $<type>$ repaired, added the 
     %negative-dollar-indices directive.
 .
     $<type> specifications were not properly parsed. Instead of $<type>i or
     $<type>$ constructions like $i<type> and $$<type> were parsed, which is
     contrary to the manual's specification. The function parsing the $-values
     is defined in parser/handledollar.cc. 
 .
     The handling of negative $-indices is improved. Negative $-indices are
     used when synthesizing attributes. In that context, $0 is useful, since it
     refers to the nonterminal matched before the current rule is starting to
     be used, allowing rules like `vardef: typename varlist ' where `varlist'
     inherits the type specification defined at `typename'. 
 .
     In most situations indices are positive. Therefore bisonc++ will warn when
     zero or non-positive $-indices are seen. The %negative-dollar-indices
     directive may be used to suppress these warnings.
 .
     $-indices exceeding the number of elements continue to cause an error. 
 .
 bisonc++ (0.98.402) unstable; urgency=low
 .
   * links against bobcat 1.6.0, using bobcat's new Arg:: interface
 .
 bisonc++ (0.98.400) unstable; urgency=low
 .
   * state/writestatearray.cc adds {} around individual union values to allow
     warningless compilation of the generated parse.cc file by g++-4.0.
 .
     bisonc++ is now itself too compiled by g++-4.0.
 .
 bisonc++ (0.98.007) unstable; urgency=low
 .
   * Added a README.flex file giving some background information about the
     provided implementation of the lexical scanner (bisonc++/scanner/yylex.cc)
 .
     Modified the compilation scripts: bisconc++/flex/FlexLexer.h is now
     included by default. This FlexLexer.h file is expected by
     bisonc++/scanner/yylex.cc and by the Scanner class.
 .
     Simplified some compilation scripts.
 .
 bisonc++ (0.98.006) unstable; urgency=low
 .
   * Removed the dependency on `icmake'. No change of functionality
     See the instructions in the `INSTALL' file when you want to compile and
     install `bisonc++' yourself, rather than using the binary (.deb)
     distribution. 
 .
 bisonc++ (0.98.005) unstable; urgency=low
 .
   * Removed the classes Arg, Errno, Msg and Wrap1, using the Bobcat library's
     versions of these classes from now on. No feature-changes.
 .
     Added minor modifications to the `build' script.
 .
     Annoying Error: The function `ItemSets::deriveAction()' did not recognize
     the `ACCEPT' action, so some (most ?) grammars could not be properly
     recognized. I applied a quick hack: if an action isn't `shift' or
     `reduce', it can be `accept', resulting in acceptance of the grammar. This
     solves the actual problem, but I'll have to insepct this in a bit more
     detail. For now, it should work ok.
 .
 bisonc++ (0.98.004) unstable; urgency=low
 .
   * When new lookahead set elements are added to existing states,
     d_recheckState in itemsets/lookaheads.cc (ItemSets::checkLookaheads()) was
     reassigned to the state index whose lookaheadset was enlarged. However, if
     that happened for existing state `i' and then, during the same
     state-inspection, for state `j' where j > i, then the recheck would start
     at `j' rather than `i'. This problem was solved by giving d_recheckState
     only a lower value than its current value.
     
     With R/R conflicts involving `ACCEPT' reductions (with, e.g., `S_$: S .'),
     ACCEPT is selected as the chosen alternative. See State::setReduce()
     (state/setreduce.cc). Since this matches with the `first reduction rule'
     principle, it should be ok.
     
     %stype specifications may consist of multiple elements: the remainder of
     the line beyond %stype is interpreted as the type definition. The
     specification should (therefore) not contain comment or other characters
     that are not part of the actual type definition. The man-page is adapted
     accordingly. Same holds true for the %ltype directive
     
     Added a check whether the grammar derives a sentence
     (itemsets/derivesentence.cc). If not, a fatal error is issued. This
     happens at the end of the program's actions, and at this point files
     etc. have already been generated. They are kept rather than removed for
     further reference. Grammars not deriving sentences should probably not be
     used.
     
     The original Bison documentation has been converted to a Bisonc++ user
     guide. Furthermore, a html-converted manual page is now available under
     /usr/share/doc/bisonc++/man
 .
     The `calculator' example used in the man-page is now under
     /usr/share/doc/bisonc++/man/calculator 
 .
     Bisonc++ is distributed under the Academic Free License, see the file
     COPYING in /usr/share/doc/bisonc++
 .
 bisonc++ (0.98.003) unstable; urgency=low
 .
   * Incomplete default State constructor now explicitly defined, prevents
     the incidental erroneous rapporting of conflicts for some states.
 .
 bisonc++ (0.98.002) unstable; urgency=low
 .
   * The Wrap1 configurable unary predicate template class replaces various
     other templates (WrapStatic, Wrap, Pred1Wrap). No further usage or
     implementation changes/modifications.
 .
 bisonc++ (0.98.001) unstable; urgency=low
 .
   * This is a complete rewrite of the former bisonc++ (0.91) version. The
     program bisonc++ is now a C++ program, producing C++ sources, using the
     algorithm for creating LALR-1 grammars as outlined by Aho, Sethi and
     Ullman's (1986) `Dragon' book. The release number will remain 0.98 for a
     while, and 0.98.001 holds the initial package, new style. Also see the
     man-page, since some things have been changed (augmented) since the
     previous version. No dramatic changes in the grammar specification method:
     Bisonc++ still uses bison's way to specify grammars, but some features,
     already obsolete in bisonc++ 0.91 were removed.
 .
     Also note my e-mail address: the U. of Groningen's official policy now is
     to remove department specific information, so it's `@rug.nl' rather than
     `@rc.rug.nl', as used before.
 .
 bisonc++ (0.91) unstable; urgency=low
 .
   * Added several missing short options (like -B etc) to the getopt() function
     call. I forgot to add them to the previous version(s). Internally, all old
     C style allocations were changed to C++ style allocations, using operators
     new and delete. Where it was immediately obvious that a vector could be
     used, I now use vectors. The internally used types `core' `shifts' and
     'reductions' (types.h) now use a vector data member rather than an int [1]
     member, which is then allocated to its proper (I may hope) size when the
     structs are allocated.
 .
 bisonc++ (0.90) unstable; urgency=low
 .
   * Command-line options now override matching declarations specified in the
     grammar specification file.
 .
     All %define declarations have been removed. Instead their first arguments
     are now used to specify declarations. E.g., %parser-skeleton instead of
     %define parser-skeleton.
 .
     All declarations use lower-case letters, and use only separating hyphens,
     no underscores. E.g., %lsp-needed rather than %define LSP_NEEDED
     The declaration %class-name replaces the former %name declaration
 .
     All yy and YY name prefixes of symbols defined by bisonc++ have been
     removed. The parser-state `yydefault' has been renamed to `defaultstate'.
 .
 bisonc++ (0.82) unstable; urgency=low
 .
   * Added d_nError as protected data member to the base class. Missed it
     during the initial conversion. d_nErrors counts the number of parsing
     errors. Replaces yynerrs from bison(++)
 .
 bisonc++ (0.81) unstable; urgency=low
 .
   * Added the option --show-files to display the names of the files that are
     used or generated by bisonc++.
 .
 bisonc++ (0.80) unstable; urgency=low
 .
   * Completed the initial debian release. No changes in the software.
 .
 bisonc++ (0.70-1) unstable; urgency=low
 .
   * Initial Release.
Files: 
 9ca8f61c41c296c928d4b280a60e6450 9151 devel optional bisonc++_1.5.0-1.diff.gz
 35cd5e7d8600995916ea5c7b0d43f730 602927 devel optional bisonc++_1.5.0.orig.tar.gz
 c8690042100270b81f5770e87242be67 753 devel optional bisonc++_1.5.0-1.dsc





More information about the feisty-changes mailing list