[BACK]Return to main.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / awk

Diff for /src/usr.bin/awk/main.c between version 1.16 and 1.17

version 1.16, 2010/06/13 17:58:19 version 1.17, 2011/09/28 19:27:18
Line 23 
Line 23 
 THIS SOFTWARE.  THIS SOFTWARE.
 ****************************************************************/  ****************************************************************/
   
 const char      *version = "version 20100523";  const char      *version = "version 20110810";
   
 #define DEBUG  #define DEBUG
 #include <stdio.h>  #include <stdio.h>
Line 40 
Line 40 
 extern  char    *__progname;  extern  char    *__progname;
   
 int     dbg     = 0;  int     dbg     = 0;
   Awkfloat        srand_seed = 1;
 char    *cmdname;       /* gets argv[0] for error messages */  char    *cmdname;       /* gets argv[0] for error messages */
 extern  FILE    *yyin;  /* lex input file */  extern  FILE    *yyin;  /* lex input file */
 char    *lexprog;       /* points to program argument if it exists */  char    *lexprog;       /* points to program argument if it exists */
Line 69 
Line 70 
                 exit(1);                  exit(1);
         }          }
         signal(SIGFPE, fpecatch);          signal(SIGFPE, fpecatch);
   
         yyin = NULL;          yyin = NULL;
         symtab = makesymtab(NSYMTAB);          symtab = makesymtab(NSYMTAB);
         while (argc > 1 && argv[1][0] == '-' && argv[1][1] != '\0') {          while (argc > 1 && argv[1][0] == '-' && argv[1][1] != '\0') {
Line 83 
Line 85 
                                 safe = 1;                                  safe = 1;
                         break;                          break;
                 case 'f':       /* next argument is program filename */                  case 'f':       /* next argument is program filename */
                         argc--;                          if (argv[1][2] != 0) {  /* arg is -fsomething */
                         argv++;                                  if (npfile >= MAX_PFILE - 1)
                         if (npfile >= MAX_PFILE - 1)                                          FATAL("too many -f options");
                                 FATAL("too many -f options");                                  pfile[npfile++] = &argv[1][2];
                         if (argc <= 1)                          } else {                /* arg is -f something */
                                 FATAL("no program filename");                                  argc--; argv++;
                         if (npfile >= MAX_PFILE - 1)                                  if (argc <= 1)
                                 FATAL("too many -f options");                                          FATAL("no program filename");
                         pfile[npfile++] = argv[1];                                  if (npfile >= MAX_PFILE - 1)
                                           FATAL("too many -f options");
                                   pfile[npfile++] = argv[1];
                           }
                         break;                          break;
                 case 'F':       /* set field separator */                  case 'F':       /* set field separator */
                         if (argv[1][2] != 0) {  /* arg is -Fsomething */                          if (argv[1][2] != 0) {  /* arg is -Fsomething */
Line 110 
Line 115 
                                 WARNING("field separator FS is empty");                                  WARNING("field separator FS is empty");
                         break;                          break;
                 case 'v':       /* -v a=1 to be done NOW.  one -v for each */                  case 'v':       /* -v a=1 to be done NOW.  one -v for each */
                         if (argv[1][2] == '\0' && --argc > 1 && isclvar((++argv)[1]))                          if (argv[1][2] != 0) {  /* arg is -vsomething */
                                 setclvar(argv[1]);                                  if (isclvar(&argv[1][2]))
                         else if (argv[1][2] != '\0')                                          setclvar(&argv[1][2]);
                                 setclvar(&argv[1][2]);                                  else
                                           FATAL("invalid -v option argument: %s", &argv[1][2]);
                           } else {                /* arg is -v something */
                                   argc--; argv++;
                                   if (argc <= 1)
                                           FATAL("no variable name");
                                   if (isclvar(argv[1]))
                                           setclvar(argv[1]);
                                   else
                                           FATAL("invalid -v option argument: %s", argv[1]);
                           }
                         break;                          break;
                 case 'd':                  case 'd':
                         dbg = atoi(&argv[1][2]);                          dbg = atoi(&argv[1][2]);

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17