53 |
print_closure (const char *title, item_number_t *array, size_t size) |
print_closure (const char *title, item_number_t *array, size_t size) |
54 |
{ |
{ |
55 |
size_t i; |
size_t i; |
56 |
fprintf (stderr, _("Closure: %s\n"), title); |
fprintf (stderr, "Closure: %s\n", title); |
57 |
for (i = 0; i < size; ++i) |
for (i = 0; i < size; ++i) |
58 |
{ |
{ |
59 |
item_number_t *rp; |
item_number_t *rp; |
60 |
fprintf (stderr, " %2d: .", array[i]); |
fprintf (stderr, " %2d: .", array[i]); |
61 |
for (rp = &ritem[array[i]]; *rp >= 0; ++rp) |
for (rp = &ritem[array[i]]; *rp >= 0; ++rp) |
62 |
fprintf (stderr, " %s", symbols[*rp]->tag); |
fprintf (stderr, " %s", symbols[*rp]->tag); |
63 |
fprintf (stderr, _(" (rule %d)\n"), -*rp - 1); |
fprintf (stderr, " (rule %d)\n", -*rp - 1); |
64 |
} |
} |
65 |
fputs ("\n\n", stderr); |
fputs ("\n\n", stderr); |
66 |
} |
} |
133 |
} |
} |
134 |
|
|
135 |
if (trace_flag & trace_sets) |
if (trace_flag & trace_sets) |
136 |
bitsetv_matrix_dump (stderr, _("RTC: Firsts Input"), firsts); |
bitsetv_matrix_dump (stderr, "RTC: Firsts Input", firsts); |
137 |
bitsetv_reflexive_transitive_closure (firsts); |
bitsetv_reflexive_transitive_closure (firsts); |
138 |
if (trace_flag & trace_sets) |
if (trace_flag & trace_sets) |
139 |
bitsetv_matrix_dump (stderr, _("RTC: Firsts Output"), firsts); |
bitsetv_matrix_dump (stderr, "RTC: Firsts Output", firsts); |
140 |
|
|
141 |
if (trace_flag & trace_sets) |
if (trace_flag & trace_sets) |
142 |
print_firsts (); |
print_firsts (); |
200 |
bitset_iterator iter; |
bitset_iterator iter; |
201 |
|
|
202 |
if (trace_flag & trace_sets) |
if (trace_flag & trace_sets) |
203 |
print_closure (_("input"), core, n); |
print_closure ("input", core, n); |
204 |
|
|
205 |
bitset_zero (ruleset); |
bitset_zero (ruleset); |
206 |
|
|
231 |
} |
} |
232 |
|
|
233 |
if (trace_flag & trace_sets) |
if (trace_flag & trace_sets) |
234 |
print_closure (_("output"), itemset, nritemset); |
print_closure ("output", itemset, nritemset); |
235 |
} |
} |
236 |
|
|
237 |
|
|