* src/vcg.c (quote): Use slot 2, since we often pass symbol tag

escaped in slot 0.
This commit is contained in:
Akim Demaille
2002-06-30 17:30:09 +00:00
parent c7ca99d4b0
commit e5fb671032
2 changed files with 33 additions and 4 deletions

View File

@@ -1,3 +1,30 @@
2002-06-30 Akim Demaille <akim@epita.fr>
* src/vcg.c (quote): Use slot 2, since we often pass symbol tag
escaped in slot 0.
2002-06-30 Akim Demaille <akim@epita.fr>
Use hash.h for the state hash table.
* src/LR0.c (STATE_HASH_SIZE, state_hash): Remove.
(allocate_storage): Use state_hash_new.
(free_storage): Use state_hash_free.
(new_state, get_state): Adjust.
* src/lalr.h, src/lalr.c (states): Move to...
* src/states.h (state_t): Remove the `link' member, no longer
used.
* src/states.h, src/states.c: here.
(state_hash_new, state_hash_free, state_hash_lookup)
(state_hash_insert, states_free): New.
* src/states.c (state_table, state_compare, state_hash): New.
* src/output.c (output_actions): Do not free states now, since we
still need to know the final_state number in `prepare', called
afterwards. Do it...
* src/main.c (main): here: call states_free after `output'.
2002-06-30 Akim Demaille <akim@epita.fr> 2002-06-30 Akim Demaille <akim@epita.fr>
Use hash.h for the state hash table. Use hash.h for the state hash table.

View File

@@ -1,5 +1,5 @@
/* VCG description handler for Bison. /* VCG description handler for Bison.
Copyright 2001 Free Software Foundation, Inc. Copyright 2001, 2002 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler. This file is part of Bison, the GNU Compiler Compiler.
@@ -23,12 +23,14 @@
#include "vcg_defaults.h" #include "vcg_defaults.h"
#include "quotearg.h" #include "quotearg.h"
/* Return an unambiguous printable representated, allocated in slot 0, /* Return an unambiguous printable representated, for NAME, suitable
for NAME, suitable for C strings. */ for C strings. Use slot 2 since the user may use slots 0 and 1.
*/
static char const * static char const *
quote (char const *name) quote (char const *name)
{ {
return quotearg_n_style (0, c_quoting_style, name); return quotearg_n_style (2, c_quoting_style, name);
} }