]> git.saurik.com Git - bison.git/blobdiff - src/getargs.c
* src/gram.h, src/gram.c (pure_parser, glr_parser): Move to...
[bison.git] / src / getargs.c
index 182b9f3b69734fd4956acca6e7ca7e7bcd65621a..363e6aaa520f5665a0b1ea4972171be37384aa30 100644 (file)
@@ -1,5 +1,6 @@
-/* Parse command line arguments for bison.
-   Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002
+/* Parse command line arguments for Bison.
+
+   Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003
    Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
    Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 #include <argmatch.h>
 #include <error.h>
 
 #include <argmatch.h>
 #include <error.h>
+
+/* Hack to get <getopt.h> to declare getopt with a prototype.  */
+#if lint && ! defined __GNU_LIBRARY__
+# define __GNU_LIBRARY__
+# define HACK_FOR___GNU_LIBRARY___PROTOTYPE 1
+#endif
+
 #include <getopt.h>
 
 #include <getopt.h>
 
+#ifdef HACK_FOR___GNU_LIBRARY___PROTOTYPE
+# undef __GNU_LIBRARY__
+# undef HACK_FOR___GNU_LIBRARY___PROTOTYPE
+#endif
+
 #include "complain.h"
 #include "files.h"
 #include "getargs.h"
 #include "complain.h"
 #include "files.h"
 #include "getargs.h"
@@ -41,6 +54,10 @@ int yacc_flag = 0;   /* for -y */
 int graph_flag = 0;
 int trace_flag = trace_none;
 
 int graph_flag = 0;
 int trace_flag = trace_none;
 
+bool nondeterministic_parser = false;
+bool glr_parser = false;
+bool pure_parser = false;
+
 const char *skeleton = NULL;
 const char *include = NULL;
 
 const char *skeleton = NULL;
 const char *include = NULL;
 
@@ -250,7 +267,7 @@ version (void)
   putc ('\n', stdout);
 
   fprintf (stdout,
   putc ('\n', stdout);
 
   fprintf (stdout,
-          _("Copyright (C) %d Free Software Foundation, Inc.\n"), 2002);
+          _("Copyright (C) %d Free Software Foundation, Inc.\n"), 2003);
 
   fputs (_("\
 This is free software; see the source for copying conditions.  There is NO\n\
 
   fputs (_("\
 This is free software; see the source for copying conditions.  There is NO\n\
@@ -320,7 +337,8 @@ getargs (int argc, char *argv[])
 {
   int c;
 
 {
   int c;
 
-  while ((c = getopt_long (argc, argv, short_options, long_options, NULL)) != EOF)
+  while ((c = getopt_long (argc, argv, short_options, long_options, NULL))
+        != -1)
     switch (c)
       {
       case 0:
     switch (c)
       {
       case 0:
@@ -341,7 +359,8 @@ getargs (int argc, char *argv[])
       case 'g':
        /* Here, the -g and --graph=FILE options are differentiated.  */
        graph_flag = 1;
       case 'g':
        /* Here, the -g and --graph=FILE options are differentiated.  */
        graph_flag = 1;
-       spec_graph_file = AS_FILE_NAME (optarg);
+       if (optarg)
+         spec_graph_file = AS_FILE_NAME (optarg);
        break;
 
       case 'v':
        break;
 
       case 'v':