]> git.saurik.com Git - bison.git/blobdiff - src/main.c
* tests/regression.at, tests/torture.at, tests/calc.at: Adjust to
[bison.git] / src / main.c
index f6231386fc531533638248eb79f5eaa0ece82f8f..e811bac20eb485c7505d1431175d777007c31681 100644 (file)
@@ -1,5 +1,5 @@
 /* Top level entry point of bison,
-   Copyright 1984, 1986, 1989, 1992, 1995, 2000
+   Copyright 1984, 1986, 1989, 1992, 1995, 2000, 2001
    Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
@@ -40,7 +40,6 @@
 /* The name this program was run with, for messages.  */
 char *program_name;
 
-extern void berror PARAMS((const char *));
 
 int
 main (int argc, char *argv[])
@@ -62,8 +61,7 @@ main (int argc, char *argv[])
   if (complain_message_count)
     exit (1);
 
-  /* Find useless nonterminals and productions and reduce the grammar.
-     In file reduce.c.  */
+  /* Find useless nonterminals and productions and reduce the grammar. */
   reduce_grammar ();
 
   /* Record other info about the grammar.  In files derives and
@@ -117,14 +115,11 @@ main (int argc, char *argv[])
 
   output_files ();
 
-  exit (complain_message_count ? 1 : 0);
-}
-\f
-/* Abort for an internal error denoted by string S.  */
+  /* If using alloca.c, flush the alloca'ed memory for the benefit of
+     people running Bison as a library in IDEs.  */
+#if C_ALLOCA
+    alloca (0);
+#endif
 
-void
-berror (const char *s)
-{
-  fprintf (stderr, _("%s: internal error: %s\n"), program_name, s);
-  abort ();
+  return complain_message_count ? EXIT_FAILURE : EXIT_SUCCESS;
 }