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

Diff for /src/usr.bin/awk/lex.c between version 1.18 and 1.19

version 1.18, 2020/06/10 21:05:02 version 1.19, 2020/06/10 21:05:50
Line 31 
Line 31 
 #include "ytab.h"  #include "ytab.h"
   
 extern YYSTYPE  yylval;  extern YYSTYPE  yylval;
 extern int      infunc;  extern bool     infunc;
   
 int     lineno  = 1;  int     lineno  = 1;
 int     bracecnt = 0;  int     bracecnt = 0;
Line 98 
Line 98 
   
 #define RET(x)  { if(dbg)printf("lex %s\n", tokname(x)); return(x); }  #define RET(x)  { if(dbg)printf("lex %s\n", tokname(x)); return(x); }
   
 int peek(void);  
 int gettok(char **, int *);  
 int binsearch(char *, Keyword *, int);  
   
 static int peek(void)  static int peek(void)
 {  {
         int c = input();          int c = input();
Line 221 
Line 217 
                         while ((c = input()) != '\n' && c != 0)                          while ((c = input()) != '\n' && c != 0)
                                 ;                                  ;
                         unput(c);                          unput(c);
                           /*
                            * Next line is a hack, itcompensates for
                            * unput's treatment of \n.
                            */
                           lineno++;
                         break;                          break;
                 case ';':                  case ';':
                         RET(';');                          RET(';');
Line 394 
Line 395 
                 case '\\':                  case '\\':
                         c = input();                          c = input();
                         switch (c) {                          switch (c) {
                           case '\n': break;
                         case '"': *bp++ = '"'; break;                          case '"': *bp++ = '"'; break;
                         case 'n': *bp++ = '\n'; break;                          case 'n': *bp++ = '\n'; break;
                         case 't': *bp++ = '\t'; break;                          case 't': *bp++ = '\t'; break;

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.19