X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/16bb742fceb415d44e4d23aa467a65dff4917336..e62f1a899168bdf1658dd6d934dea407491a80ff:/src/print_graph.c?ds=inline diff --git a/src/print_graph.c b/src/print_graph.c index c92ae357..0eecd460 100644 --- a/src/print_graph.c +++ b/src/print_graph.c @@ -1,6 +1,6 @@ /* Output a VCG description on generated parser, for Bison, - Copyright (C) 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -49,9 +49,9 @@ static FILE *fgraph = NULL; static void print_core (struct obstack *oout, state *s) { - int i; + size_t i; item_number *sitems = s->items; - int snritems = s->nitems; + size_t snritems = s->nitems; /* Output all the items of a state, not only its kernel. */ if (report_flag & report_itemsets) @@ -88,24 +88,25 @@ print_core (struct obstack *oout, state *s) for (/* Nothing */; *sp >= 0; ++sp) obstack_fgrow1 (oout, " %s", symbols[*sp]->tag); - /* Experimental feature: display the lookaheads. */ - if (report_flag & report_lookaheads) + /* Experimental feature: display the look-ahead tokens. */ + if (report_flag & report_look_ahead_tokens) { /* Find the reduction we are handling. */ reductions *reds = s->reductions; int redno = state_reduction_find (s, &rules[r]); /* Print them if there are. */ - if (reds->lookaheads && redno != -1) + if (reds->look_ahead_tokens && redno != -1) { bitset_iterator biter; int k; - int not_first = 0; + char const *sep = ""; obstack_sgrow (oout, "["); - BITSET_FOR_EACH (biter, reds->lookaheads[redno], k, 0) - obstack_fgrow2 (oout, "%s%s", - not_first++ ? ", " : "", - symbols[k]->tag); + BITSET_FOR_EACH (biter, reds->look_ahead_tokens[redno], k, 0) + { + obstack_fgrow2 (oout, "%s%s", sep, symbols[k]->tag); + sep = ", "; + } obstack_sgrow (oout, "]"); } } @@ -201,17 +202,10 @@ print_graph (void) new_graph (&static_graph); -#if 0 - static_graph.smanhattan_edges = yes; - static_graph.manhattan_edges = yes; -#endif - static_graph.display_edge_labels = yes; - static_graph.layoutalgorithm = normal; static_graph.port_sharing = no; static_graph.finetuning = yes; - static_graph.long_straight_phase = yes; static_graph.priority_phase = yes; static_graph.splines = yes;