X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/c85541913b99f841de090aacf626bb8f52f7f727..c5ae8e85aa660a5dcab6873d8984a49a055c2146:/src/output.c diff --git a/src/output.c b/src/output.c index 24bb83cd..12b5d97f 100644 --- a/src/output.c +++ b/src/output.c @@ -86,18 +86,15 @@ Name (char const *name, \ if (max < table_data[i]) \ max = table_data[i]; \ } \ - obstack_1grow (&format_obstack, 0); \ - muscle_insert (name, obstack_finish (&format_obstack)); \ + muscle_insert (name, obstack_finish0 (&format_obstack)); \ \ lmin = min; \ lmax = max; \ /* Build `NAME_min' and `NAME_max' in the obstack. */ \ obstack_printf (&format_obstack, "%s_min", name); \ - obstack_1grow (&format_obstack, 0); \ - MUSCLE_INSERT_LONG_INT (obstack_finish (&format_obstack), lmin); \ + MUSCLE_INSERT_LONG_INT (obstack_finish0 (&format_obstack), lmin); \ obstack_printf (&format_obstack, "%s_max", name); \ - obstack_1grow (&format_obstack, 0); \ - MUSCLE_INSERT_LONG_INT (obstack_finish (&format_obstack), lmax); \ + MUSCLE_INSERT_LONG_INT (obstack_finish0 (&format_obstack), lmax); \ } GENERATE_MUSCLE_INSERT_TABLE(muscle_insert_unsigned_int_table, unsigned int) @@ -193,8 +190,7 @@ prepare_symbols (void) obstack_sgrow (&format_obstack, " ]b4_null["); /* Finish table and store. */ - obstack_1grow (&format_obstack, 0); - muscle_insert ("tname", obstack_finish (&format_obstack)); + muscle_insert ("tname", obstack_finish0 (&format_obstack)); } /* Output YYTOKNUM. */ @@ -288,10 +284,10 @@ prepare_states (void) static int symbol_type_name_cmp (const symbol **lhs, const symbol **rhs) { - int res = UNIQSTR_CMP((*lhs)->type_name, (*rhs)->type_name); - if (res) - return res; - return (*lhs)->number - (*rhs)->number; + int res = uniqstr_cmp ((*lhs)->type_name, (*rhs)->type_name); + if (!res) + res = (*lhs)->number - (*rhs)->number; + return res; } @@ -322,7 +318,7 @@ type_names_output (FILE *out) fputs ("m4_define([b4_type_names],\n[", out); for (i = 0; i < nsyms; /* nothing */) { - // The index of the first symbol of the current type-name. + /* The index of the first symbol of the current type-name. */ int i0 = i; fputs (i ? ",\n[" : "[", out); for (; i < nsyms && syms[i]->type_name == syms[i0]->type_name; ++i) @@ -412,25 +408,23 @@ prepare_symbol_definitions (void) #define SET_KEY(Entry) \ obstack_printf (&format_obstack, "symbol(%d, %s)", \ i, Entry); \ - obstack_1grow (&format_obstack, 0); \ - key = obstack_finish (&format_obstack); + key = obstack_finish0 (&format_obstack); #define SET_KEY2(Entry, Suffix) \ obstack_printf (&format_obstack, "symbol(%d, %s_%s)", \ i, Entry, Suffix); \ - obstack_1grow (&format_obstack, 0); \ - key = obstack_finish (&format_obstack); + key = obstack_finish0 (&format_obstack); - // Whether the symbol has an identifier. + /* Whether the symbol has an identifier. */ value = symbol_id_get (sym); SET_KEY("has_id"); MUSCLE_INSERT_INT (key, !!value); - // Its identifier. + /* Its identifier. */ SET_KEY("id"); MUSCLE_INSERT_STRING (key, value ? value : ""); - // Its tag. Typically for documentation purpose. + /* Its tag. Typically for documentation purpose. */ SET_KEY("tag"); MUSCLE_INSERT_STRING (key, sym->tag); @@ -539,7 +533,7 @@ muscles_output (FILE *out) symbol_numbers_output (out); type_names_output (out); user_actions_output (out); - // Must be last. + /* Must be last. */ muscles_m4_output (out); }