Fixed assignment of the intercept
[pspp-builds.git] / src / cmdline.c
index 50214db2717daeac333e2707509c6ea7769bae56..b9205a14ed5a6358c5bff387e11d7a8afa4c8d6c 100644 (file)
 #include <getopt.h>
 #include <stdlib.h>
 #include "alloc.h"
+#include "copyleft.h"
 #include "error.h"
 #include "filename.h"
 #include "getl.h"
+#include "glob.h"
 #include "main.h"
 #include "output.h"
+#include "progname.h"
 #include "settings.h"
 #include "str.h"
 #include "var.h"
 #include "version.h"
-#include "copyleft.h"
-#include "glob.h"
 
 #include "gettext.h"
 #define _(msgid) gettext (msgid)
@@ -52,7 +53,6 @@ char *subst_vars (char *);
 void
 parse_command_line (int argc, char **argv)
 {
-  static int testing_mode = 0;
   static struct option long_options[] =
   {
     {"algorithm", required_argument, NULL, 'a'},
@@ -73,7 +73,7 @@ parse_command_line (int argc, char **argv)
     {"recon", no_argument, NULL, 'n'},
     {"safer", no_argument, NULL, 's'},
     {"syntax", required_argument, NULL, 'x'},
-    {"testing-mode", no_argument, &testing_mode, 1},
+    {"testing-mode", no_argument, NULL, 'T'},
     {"verbose", no_argument, NULL, 'v'},
     {"version", no_argument, NULL, 'V'},
     {0, 0, 0, 0},
@@ -81,8 +81,8 @@ parse_command_line (int argc, char **argv)
 
   int c, i;
 
-  int cleared_device_defaults = 0;
-  int no_statrc = 0;
+  bool cleared_device_defaults = false;
+  bool no_statrc = false;
 
   for (;;)
     {
@@ -159,7 +159,7 @@ parse_command_line (int argc, char **argv)
          break;
        case 'l':
          outp_list_classes ();
-         err_hcf (1);
+         terminate (true);
        case 'n':
          printf (_("%s is not yet implemented."),"-n");
           putchar('\n');
@@ -168,7 +168,7 @@ parse_command_line (int argc, char **argv)
          if (!cleared_device_defaults)
            {
              outp_configure_clear ();
-             cleared_device_defaults = 1;
+             cleared_device_defaults = true;
            }
          outp_configure_add (optarg);
          break;
@@ -177,10 +177,10 @@ parse_command_line (int argc, char **argv)
           putchar('\n');
          break;
        case 'r':
-         no_statrc = 1;
+         no_statrc = true;
          break;
        case 's':
-         make_safe();
+         set_safer_mode ();
          break;
        case 'v':
          err_verbosity++;
@@ -188,7 +188,11 @@ parse_command_line (int argc, char **argv)
        case 'V':
          puts (version);
          puts (legal);
-         err_hcf (1);
+         terminate (true);
+        case 'T':
+          force_long_view ();
+          set_testing_mode (true);
+          break;
        case '?':
          usage ();
          assert (0);
@@ -199,15 +203,6 @@ parse_command_line (int argc, char **argv)
        }
     }
 
-
-  if (testing_mode)
-    {
-      /* FIXME: Later this option should do some other things, too. */
-      force_long_view();
-      test_mode = 1;
-    }
-    
-
   for (i = optind; i < argc; i++)
     {
       int separate = 1;
@@ -288,9 +283,9 @@ static const char post_syntax_message[] = N_("\nReport bugs to <%s>.\n");
 static void
 usage (void)
 {
-  printf (gettext (pre_syntax_message), pgmname);
+  printf (gettext (pre_syntax_message), program_name);
   outp_list_classes ();
-  printf (gettext (post_syntax_message),PACKAGE_BUGREPORT);
+  printf (gettext (post_syntax_message), PACKAGE_BUGREPORT);
 
-  err_hcf (1);
+  terminate (true);
 }