mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-10 04:43:03 +00:00
* src/files.c (output_files): Free the output_obstack.
* src/main.c (main): Call print and print_graph conditionally. * src/print.c (print): Work unconditionally. * src/print_graph.c (print_graph): Work unconditionally. * src/conflicts.c (log_resolution): Output only if verbose_flag.
This commit is contained in:
@@ -1,3 +1,11 @@
|
||||
2001-12-17 Akim Demaille <akim@epita.fr>
|
||||
|
||||
* src/files.c (output_files): Free the output_obstack.
|
||||
* src/main.c (main): Call print and print_graph conditionally.
|
||||
* src/print.c (print): Work unconditionally.
|
||||
* src/print_graph.c (print_graph): Work unconditionally.
|
||||
* src/conflicts.c (log_resolution): Output only if verbose_flag.
|
||||
|
||||
2001-12-16 Marc Autret <autret_m@epita.fr>
|
||||
|
||||
* src/output.c (actions_output): Fix. When we use %no-lines,
|
||||
|
||||
@@ -40,10 +40,11 @@ static unsigned *lookaheadset = NULL;
|
||||
static inline void
|
||||
log_resolution (int state, int LAno, int token, char *resolution)
|
||||
{
|
||||
obstack_fgrow4 (&output_obstack,
|
||||
_("\
|
||||
if (verbose_flag)
|
||||
obstack_fgrow4 (&output_obstack,
|
||||
_("\
|
||||
Conflict in state %d between rule %d and token %s resolved as %s.\n"),
|
||||
state, LAruleno[LAno], tags[token], resolution);
|
||||
state, LAruleno[LAno], tags[token], resolution);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -489,12 +489,13 @@ output_files (void)
|
||||
char *temp_name;
|
||||
|
||||
obstack_save (&attrs_obstack, attrsfile);
|
||||
obstack_free (&attrs_obstack, NULL);
|
||||
temp_name = stringappend (short_base_name, EXT_GUARD_C);
|
||||
#ifndef MSDOS
|
||||
temp_name = stringappend (temp_name, src_extension);
|
||||
#endif /* MSDOS */
|
||||
obstack_save (&guard_obstack, temp_name);
|
||||
obstack_free (&guard_obstack, NULL);
|
||||
}
|
||||
|
||||
obstack_free (&guard_obstack, NULL);
|
||||
obstack_free (&attrs_obstack, NULL);
|
||||
}
|
||||
|
||||
@@ -93,10 +93,12 @@ main (int argc, char *argv[])
|
||||
exit (1);
|
||||
|
||||
/* Output the detailed report on the grammar. */
|
||||
print_results ();
|
||||
if (verbose_flag)
|
||||
print_results ();
|
||||
|
||||
/* Output the VCG graph. */
|
||||
print_graph ();
|
||||
if (graph_flag)
|
||||
print_graph ();
|
||||
|
||||
/* Output the tables and the parser to ftable. In file output. */
|
||||
output ();
|
||||
|
||||
54
src/print.c
54
src/print.c
@@ -307,35 +307,33 @@ print_grammar (FILE *out)
|
||||
void
|
||||
print_results (void)
|
||||
{
|
||||
if (verbose_flag)
|
||||
{
|
||||
int i;
|
||||
int i;
|
||||
|
||||
/* We used to use just .out if SPEC_NAME_PREFIX (-p) was used, but
|
||||
that conflicts with Posix. */
|
||||
FILE *out = xfopen (spec_verbose_file, "w");
|
||||
/* We used to use just .out if SPEC_NAME_PREFIX (-p) was used, but
|
||||
that conflicts with Posix. */
|
||||
FILE *out = xfopen (spec_verbose_file, "w");
|
||||
|
||||
size_t size = obstack_object_size (&output_obstack);
|
||||
fwrite (obstack_finish (&output_obstack), 1, size, out);
|
||||
if (size)
|
||||
fputs ("\n\n", out);
|
||||
|
||||
reduce_output (out);
|
||||
conflicts_output (out);
|
||||
|
||||
print_grammar (out);
|
||||
|
||||
/* New experimental feature: output all the items of a state,
|
||||
not only its kernel. Requires to run closure, which need
|
||||
memory allocation/deallocation. */
|
||||
if (trace_flag)
|
||||
new_closure (nitems);
|
||||
for (i = 0; i < nstates; i++)
|
||||
print_state (out, i);
|
||||
if (trace_flag)
|
||||
free_closure ();
|
||||
|
||||
xfclose (out);
|
||||
}
|
||||
size_t size = obstack_object_size (&output_obstack);
|
||||
fwrite (obstack_finish (&output_obstack), 1, size, out);
|
||||
obstack_free (&output_obstack, NULL);
|
||||
|
||||
if (size)
|
||||
fputs ("\n\n", out);
|
||||
|
||||
reduce_output (out);
|
||||
conflicts_output (out);
|
||||
|
||||
print_grammar (out);
|
||||
|
||||
/* New experimental feature: output all the items of a state,
|
||||
not only its kernel. Requires to run closure, which need
|
||||
memory allocation/deallocation. */
|
||||
if (trace_flag)
|
||||
new_closure (nitems);
|
||||
for (i = 0; i < nstates; i++)
|
||||
print_state (out, i);
|
||||
if (trace_flag)
|
||||
free_closure ();
|
||||
|
||||
xfclose (out);
|
||||
}
|
||||
|
||||
@@ -207,9 +207,6 @@ print_graph (void)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (!graph_flag)
|
||||
return;
|
||||
|
||||
/* Output file. */
|
||||
fgraph = xfopen (spec_graph_file, "w");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user