diff options
author | Marc Autret <autret_m@epita.fr> | 2001-09-21 16:25:19 +0000 |
---|---|---|
committer | Marc Autret <autret_m@epita.fr> | 2001-09-21 16:25:19 +0000 |
commit | 25b222faf6299aad314c11713561c7cbfc43a420 (patch) | |
tree | 1c456fc744d271f5a53fd38191a2b2e9c359672c | |
parent | 6bc35ae56a34c075b00fdc0c14c0cd8c14bf80ca (diff) | |
download | bison-25b222faf6299aad314c11713561c7cbfc43a420.tar.gz |
* src/reader.c (copy_definition, parse_union_decl): Update and use
`linef' muscle.
(copy_action): Likewise.
Use obstack_1grow ().
* src/muscle_tab.c (muscle_init): Add muscle `linef'.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | src/muscle_tab.c | 2 | ||||
-rw-r--r-- | src/reader.c | 30 |
3 files changed, 27 insertions, 13 deletions
@@ -1,5 +1,13 @@ 2001-09-21 Marc Autret <autret_m@epita.fr> + * src/reader.c (copy_definition, parse_union_decl): Update and use + `linef' muscle. + (copy_action): Likewise. + Use obstack_1grow (). + * src/muscle_tab.c (muscle_init): Add muscle `linef'. + +2001-09-21 Marc Autret <autret_m@epita.fr> + * src/options.c (option_table): Adjust. * src/lex.c (parse_percent_token): Fix. diff --git a/src/muscle_tab.c b/src/muscle_tab.c index 13433edc..eeda6112 100644 --- a/src/muscle_tab.c +++ b/src/muscle_tab.c @@ -91,6 +91,8 @@ muscle_init (void) muscle_insert ("ntbase", "0"); muscle_insert ("verbose", "0"); muscle_insert ("prefix", "yy"); + /* Default #line formatting. */ + muscle_insert ("linef", "#line %d %s\n"); /* No parser macros. */ muscle_insert ("nnts", "0"); diff --git a/src/reader.c b/src/reader.c index 7aeec65b..5344837a 100644 --- a/src/reader.c +++ b/src/reader.c @@ -429,8 +429,11 @@ copy_definition (void) #if 0 if (!no_lines_flag) - obstack_fgrow2 (&attrs_obstack, "#line %d %s\n", - lineno, quotearg_style (c_quoting_style, infile)); + { + obstack_fgrow2 (&attrs_obstack, muscle_find ("linef"), + lineno, quotearg_style (c_quoting_style, + muscle_find("filename"))); + } #endif after_percent = 0; @@ -748,13 +751,16 @@ parse_union_decl (void) typed = 1; + if (!no_lines_flag) - obstack_fgrow2 (&attrs_obstack, "\n#line %d %s\n", - lineno, quotearg_style (c_quoting_style, - muscle_find("filename"))); + { + obstack_fgrow2 (&attrs_obstack, muscle_find ("linef"), + lineno, quotearg_style (c_quoting_style, + muscle_find("filename"))); + } else obstack_1grow (&attrs_obstack, '\n'); - + obstack_sgrow (&attrs_obstack, "typedef union"); if (defines_flag) obstack_sgrow (&defines_obstack, "typedef union"); @@ -1107,15 +1113,13 @@ copy_action (symbol_list *rule, int stack_offset) if (semantic_parser) stack_offset = 0; - sprintf (buf, "\ncase %d:\n", nrules); - obstack_grow (&action_obstack, buf, strlen (buf)); + obstack_fgrow1 (&action_obstack, "\ncase %d:\n", nrules); if (!no_lines_flag) { - sprintf (buf, "#line %d %s\n", - lineno, quotearg_style (c_quoting_style, - muscle_find ("filename"))); - obstack_grow (&action_obstack, buf, strlen (buf)); + obstack_fgrow2 (&action_obstack, muscle_find ("linef"), + lineno, quotearg_style (c_quoting_style, + muscle_find ("filename"))); } obstack_1grow (&action_obstack, '{'); @@ -1201,7 +1205,7 @@ copy_guard (symbol_list *rule, int stack_offset) obstack_fgrow1 (&guard_obstack, "\ncase %d:\n", nrules); if (!no_lines_flag) - obstack_fgrow2 (&guard_obstack, "#line %d %s\n", + obstack_fgrow2 (&guard_obstack, muscle_find ("linef"), lineno, quotearg_style (c_quoting_style, muscle_find ("filename"))); obstack_1grow (&guard_obstack, '{'); |