+ obstack_fgrow1 (oout, " %s", symbol_tag_get (symbols[*sp]));
+
+ /* Experimental feature: display the lookaheads. */
+ if ((report_flag & report_lookaheads)
+ && state->nlookaheads)
+ {
+ int j, k;
+ int nlookaheads = 0;
+ /* Look for lookaheads corresponding to this rule. */
+ for (j = 0; j < state->nlookaheads; ++j)
+ BITSET_EXECUTE (state->lookaheads[j], 0, k,
+ {
+ if (state->lookaheads_rule[j]->number == rule)
+ nlookaheads++;
+ });
+
+ if (nlookaheads)
+ {
+ obstack_sgrow (oout, " [");
+ for (j = 0; j < state->nlookaheads; ++j)
+ BITSET_EXECUTE (state->lookaheads[j], 0, k,
+ {
+ if (state->lookaheads_rule[j]->number == rule)
+ obstack_fgrow2 (oout, "%s%s",
+ symbol_tag_get (symbols[k]),
+ --nlookaheads ? ", " : "");
+ });
+ obstack_sgrow (oout, "]");
+ }
+ }