mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-15 23:33:03 +00:00
* src/gram.h (rule_t): guard' and guard_line' are new members.
* src/reader.c (symbol_list): `guard' and `guard_line' are new members. (symbol_list_new): Adjust. (copy_action): action_line is the first line, not the last. (copy_guard): Just as for actions, store the `action' only, not the switch/case/break flesh. Don't parse the user action that might follow the guard, let... (readgram): do it, i.e., now, there can be an action after a guard. In other words the guard is just explicitly optional. (packgram): Adjust. * src/output.c (guards_output): New. (output_parser): Call it when needed. (output): Also free the guard and attrs obstacks. * src/files.c, src/files.h (obstack_save): Remove. (output_files): Remove. As a result, if one needs the former `.act' file, using an appropriate skeleton which requires actions and guards is now required. * src/main.c (main): Adjust. * tests/semantic.at: New. * tests/regression.at: Use `input.y' as input file name. Avoid 8+3 problems by requiring input.c when the test needs the parser.
This commit is contained in:
@@ -62,13 +62,12 @@ extern char *infile;
|
||||
extern char *attrsfile;
|
||||
|
||||
void compute_output_file_names PARAMS((void));
|
||||
void output_files PARAMS((void));
|
||||
|
||||
FILE *xfopen PARAMS ((const char *name, const char *mode));
|
||||
int xfclose PARAMS ((FILE *ptr));
|
||||
|
||||
/* Compute the double inclusion guard's name. */
|
||||
char * compute_header_macro PARAMS ((void));
|
||||
char *compute_header_macro PARAMS ((void));
|
||||
|
||||
const char *skeleton_find PARAMS ((const char *envvar,
|
||||
const char *skeleton_name));
|
||||
|
||||
Reference in New Issue
Block a user