summaryrefslogtreecommitdiff
path: root/gcc/genconfig.c
diff options
context:
space:
mode:
authorZack Weinberg <zackw@stanford.edu>2001-04-02 16:29:32 +0000
committerZack Weinberg <zack@gcc.gnu.org>2001-04-02 16:29:32 +0000
commit0313e85b82d26887adb3cdab1dd8ce0a135135a3 (patch)
tree113af7fdc2e163e99c91162b13799deeae6fdb8d /gcc/genconfig.c
parent79cb7361fad4c4b58a09c1f6e64cf81c3cf9b8dc (diff)
genattr.c, [...]: Wrap generated header in multiple-include guard.
* genattr.c, gencheck.c, gencodes.c, genconfig.c, genflags.c, gengenrtl.c: Wrap generated header in multiple-include guard. Improve error checking. From-SVN: r41006
Diffstat (limited to 'gcc/genconfig.c')
-rw-r--r--gcc/genconfig.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/gcc/genconfig.c b/gcc/genconfig.c
index 01bbd817e09..bd61827d163 100644
--- a/gcc/genconfig.c
+++ b/gcc/genconfig.c
@@ -280,8 +280,10 @@ main (argc, argv)
if (init_md_reader (argv[1]) != SUCCESS_EXIT_CODE)
return (FATAL_EXIT_CODE);
- printf ("/* Generated automatically by the program `genconfig'\n\
-from the machine description file `md'. */\n\n");
+ puts ("/* Generated automatically by the program `genconfig'");
+ puts (" from the machine description file `md'. */\n");
+ puts ("#ifndef GCC_INSN_CONFIG_H");
+ puts ("#define GCC_INSN_CONFIG_H\n");
/* Allow at least 10 operands for the sake of asm constructs. */
max_recog_operands = 9; /* We will add 1 later. */
@@ -356,8 +358,12 @@ from the machine description file `md'. */\n\n");
printf ("#define MAX_INSNS_PER_PEEP2 %d\n", max_insns_per_peep2);
}
- fflush (stdout);
- return (ferror (stdout) != 0 ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE);
+ puts("\n#endif /* GCC_INSN_CONFIG_H */");
+
+ if (ferror (stdout) || fflush (stdout) || fclose (stdout))
+ return FATAL_EXIT_CODE;
+
+ return SUCCESS_EXIT_CODE;
}
/* Define this so we can link with print-rtl.o to get debug_rtx function. */