From: Alexandre Duret-L. <ad...@sr...> - 2004-06-30 20:21:09
|
Hi Haim, Sorry for the delay (it will happen again :)). >>> "Haim" == Haim Cohen <hai...@us...> writes: [...] Haim> Everyone have read access to the BuDDy repository in Haim> S.F. You should first checkout/read the current CVS Haim> repository. I'll generate all my patches against the CVS version of BuDDy. Haim> It would be great if you could first merge your changes Haim> into the BuDDy 2.3 and test them. I did that yesterday (i.e., I've imported BuDDy 2.3 into the Spot CVS repository and merge my changes). (The result is in http://spot.lip6.fr/dl/spot-0.0v.tar.gz) I though it would be peanuts because CHANGES said nothing changed except the version, but it turned out I had other changes to cope with, besides the version bump: many examples were renamed, there is a new way of defining VERSION, ... I agree such changes do not belong to the CHANGES file (which looks like what GNU projects call NEWS), yet it would have saved me time to have a list of such changes, and I guess it would help other contributors too. Maybe you could consider using a ChangeLog to keep track of every changes, like in GNU projects? (see also http://www.gnu.org/prep/standards_40.html#SEC40) [...] Haim> I think that the build automation with autoconf should be the first Haim> thing to integrate into BuDDy. Wow, you're brave. I though this would be the most controversial change! I have one question before I prepare a patch for this. Do you want to keep generated files (configure, Makefile.in, ...) in CVS or not? I personally keep them out of CVS, but see http://sources.redhat.com/automake/automake.html#CVS before making your mind. By the meantime, here is a patch that fixes the following diagnostic output by the CVS version of Bison. I guess its better to fix such things before changing the build. [...] parser.y:67.12: warning: stray `,' treated as white space parser.y:67.19: warning: stray `,' treated as white space parser.y:67.29: warning: stray `,' treated as white space parser.y:67.37: warning: stray `,' treated as white space parser.y:69.17: warning: stray `,' treated as white space parser.y:69.27: warning: stray `,' treated as white space parser.y:70.14: warning: stray `,' treated as white space parser.y:71.21: warning: stray `,' treated as white space parser.y:71.32: warning: stray `,' treated as white space parser.y:71.40: warning: stray `,' treated as white space [...] FWIW, the standard for yacc can be found at http://www.opengroup.org/onlinepubs/009695399/utilities/yacc.html#tag_04_174_13_03 2004-06-30 Alexandre Duret-Lutz <ad...@sr...> * examples/bddcalc/parser.y: Remove superfluous comas causing warnings from CVS Bison. POSIX requires "%token"s to be space-separated, not coma-separated. Index: examples/bddcalc/parser.y =================================================================== RCS file: /cvsroot/buddy/buddy/examples/bddcalc/parser.y,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 parser.y --- examples/bddcalc/parser.y 25 Jun 2004 13:21:45 -0000 1.1.1.1 +++ examples/bddcalc/parser.y 30 Jun 2004 20:09:31 -0000 @@ -14,11 +14,11 @@ #include "slist.h" #include "hashtbl.h" #include "parser.h" - + /* Definitions for storing and caching of identifiers */ #define inputTag 0 #define exprTag 1 - + struct nodeData { nodeData(const nodeData &d) { tag=d.tag; name=sdup(d.name); val=d.val; } @@ -37,7 +37,7 @@ int linenum; bddgbchandler gbcHandler = bdd_default_gbchandler; - + /* Prototypes */ void actInit(token *nodes, token *cache); void actInputs(void); @@ -46,7 +46,7 @@ void actOpr2(token *res, token *left, token *right, int opr); void actNot(token *res, token *right); void actId(token *res, token *id); -void actConst(token *res, int); +void actConst(token *res, int); void actSize(token *id); void actDot(token *fname, token *id); void actAutoreorder(token *times, token *method); @@ -57,30 +57,30 @@ void actQuantVar2(token *res, token *id, token *list); void actQuantVar1(token *res, token *id); void actPrint(token *id); - + %} /************************************************************************* Token definitions *************************************************************************/ -%token T_id, T_str, T_intval, T_true, T_false +%token T_id T_str T_intval T_true T_false -%token T_initial, T_inputs, T_actions -%token T_size, T_dumpdot -%token T_autoreorder, T_reorder, T_win2, T_win2ite, T_sift, T_siftite, T_none -%token T_cache, T_tautology, T_print +%token T_initial T_inputs T_actions +%token T_size T_dumpdot +%token T_autoreorder T_reorder T_win2 T_win2ite T_sift T_siftite T_none +%token T_cache T_tautology T_print -%token T_lpar, T_rpar +%token T_lpar T_rpar %token T_equal -%token T_semi, T_dot +%token T_semi T_dot -%right T_exist, T_forall, T_dot +%right T_exist T_forall T_dot %left T_biimp %left T_imp -%left T_or, T_nor +%left T_or T_nor %left T_xor -%left T_nand, T_and +%left T_nand T_and %right T_not /************************************************************************* @@ -212,7 +212,7 @@ { using namespace std ; int c; - + while ((c=getopt(ac, av, "hg")) != EOF) { switch (c) @@ -225,7 +225,7 @@ break; } } - + if (optind >= ac) usage(); @@ -242,7 +242,7 @@ bdd_printstat(); bdd_done(); - + return 0; } @@ -279,7 +279,7 @@ { if (names.exists((*i).name)) yyerror("Redefinition of input %s", (*i).name); - + (*i).val = bdd_ithvar(vnum); hashData hd((*i).name, 0, &(*i)); names.add(hd); @@ -299,7 +299,7 @@ { if (names.exists(id->id)) yyerror("Redefinition of %s", id->id); - + nodeData *d = new nodeData(exprTag, sdup(id->id), *expr->bval); hashData hd(d->name, 0, d); names.add(hd); -- Alexandre Duret-Lutz |