comerr: avoid comma operator
[openafs.git] / src / comerr / compile_et.c
index b90238a..982cabb 100644 (file)
 #undef MEMORYLEAK
 #include <afsconfig.h>
 #include <afs/param.h>
-#include <afs/afsutil.h>
 
+#include <roken.h>
+#include <afs/opr.h>
 
-#include <stdio.h>
-#include <stdlib.h>
-
-#ifndef AFS_NT40_ENV
-#include <sys/file.h>
-#include <sys/param.h>
-#endif
-
-#include <errno.h>
-#include <string.h>
-#ifdef AFS_AIX32_ENV
-#include <signal.h>
-#endif
 #include "mit-sipb-cr.h"
 #include "internal.h"
 #include "compiler.h"
@@ -38,7 +26,7 @@ static const char copyright[] =
 extern char *current_token;
 extern int table_number, current;
 char buffer[BUFSIZ];
-char *table_name = (char *)NULL;
+char *table_name = NULL;
 FILE *hfile, *cfile, *msfile;
 int version = 1;
 int use_msf = 0;
@@ -55,7 +43,7 @@ extern int yylineno;
 char *
 xmalloc(unsigned int size)
 {
-    char *p = (char *)malloc(size);
+    char *p = malloc(size);
     if (!p) {
        perror(whoami);
        exit(1);
@@ -174,8 +162,8 @@ main(int argc, char **argv)
     p = strrchr(whoami, '/');
     if (p)
        whoami = p + 1;
-    while (argv++, --argc) {
-       char *arg = *argv;
+    while (--argc) {
+       char *arg = *++argv;
        if (arg[0] != '-') {
            if (filename)
                dup_err("filenames", filename, arg);
@@ -186,7 +174,8 @@ main(int argc, char **argv)
                debug++;
            else if (check_arg(lang_args, arg)) {
                got_language++;
-               arg = *++argv, argc--;
+               arg = *++argv;
+               argc--;
                if (!arg)
                    usage();
                if (language)
@@ -213,17 +202,26 @@ main(int argc, char **argv)
                    exit(1);
                }
            } else if (strcmp(arg, "h") == 0) {
-               arg = *++argv, argc--;
+               arg = *++argv;
+               argc--;
                if (!arg)
                    usage();
                got_include = arg;
            } else if (strcmp(arg, "p") == 0) {
-               arg = *++argv, argc--;
+               arg = *++argv;
+               argc--;
                if (!arg)
                    usage();
                got_prefix = arg;
            } else if (strcmp(arg, "v") == 0) {
-               arg = *++argv, argc--;
+               arg = *++argv;
+               argc--;
+               if (arg == NULL) {
+                   fprintf(stderr, "%s: -v option requires an argument\n",
+                           whoami);
+                   usage();
+                   exit(1);
+               }
                version = atoi(arg);
                if (version != 1 && version != 2) {
                    fprintf(stderr, "%s: unknown control argument -`%s'\n",
@@ -252,7 +250,7 @@ main(int argc, char **argv)
 
 
     p = strrchr(filename, '/');
-    if (p == (char *)NULL)
+    if (p == NULL)
        p = filename;
     else
        p++;
@@ -297,7 +295,7 @@ main(int argc, char **argv)
     }
 
     hfile = fopen(h_file, "w");
-    if (hfile == (FILE *) NULL) {
+    if (hfile == NULL) {
        perror(h_file);
        exit(1);
     }
@@ -338,14 +336,14 @@ main(int argc, char **argv)
 
     if (use_msf) {
        msfile = fopen(msf_file, "w");
-       if (msfile == (FILE *) NULL) {
+       if (msfile == NULL) {
            perror(msf_file);
            exit(1);
        }
        fprintf(msfile, msf_warning, msf_file);
     } else {
        cfile = fopen(c_file, "w");
-       if (cfile == (FILE *) NULL) {
+       if (cfile == NULL) {
            perror(c_file);
            exit(1);
        }