*** 1.1 1991/12/11 16:13:13 --- Makefile 1991/12/11 17:07:11 *************** *** 64,71 **** # MISSING = -DSPRINTF_INT -DBLKSIZE_MISSING -DSTRERROR_MISSING -DRANDOM_MISSING # VAX running Ultrix 3.x - MISSING = -DSTRERROR_MISSING # A generic 4.2 BSD machine # (eliminate GETOPT_MISSING for 4.3 release) # (eliminate STRCASE_MISSING and TMPNAM_MISSING for Tahoe release) --- 64,75 ---- # MISSING = -DSPRINTF_INT -DBLKSIZE_MISSING -DSTRERROR_MISSING -DRANDOM_MISSING # VAX running Ultrix 3.x + # LINUX + MISSING = -DSPRINTF_INT -DTMPNAM_MISSING -DBLKSIZE_MISSING -DSTRCASE_MISSING \ + -Dalloca=__builtin_alloca -DGCVT_MISSING -DRANDOM_MISSING \ + -DBCOPY_MISSING -DSTRTOD_MISSING + # A generic 4.2 BSD machine # (eliminate GETOPT_MISSING for 4.3 release) # (eliminate STRCASE_MISSING and TMPNAM_MISSING for Tahoe release) *************** *** 80,92 **** # Comment out the next line if you don't have gcc. # Also choose just one of -g and -O. ! #CC= gcc ! #OPTIMIZE= -O -g PROFILE= #-pg DEBUG= #-DDEBUG #-DMEMDEBUG #-DFUNC_TRACE #-DMPROF DEBUGGER= #-g -Bstatic ! WARN= #-W -Wunused -Wimplicit -Wreturn-type -Wcomment # for gcc only # Parser to use on grammar -- if you don't have bison use the first one #PARSER = yacc --- 84,96 ---- # Comment out the next line if you don't have gcc. # Also choose just one of -g and -O. ! CC= gcc ! OPTIMIZE= -O #-g PROFILE= #-pg DEBUG= #-DDEBUG #-DMEMDEBUG #-DFUNC_TRACE #-DMPROF DEBUGGER= #-g -Bstatic ! WARN= -W -Wunused -Wimplicit -Wreturn-type -Wcomment # for gcc only # Parser to use on grammar -- if you don't have bison use the first one #PARSER = yacc *************** *** 154,160 **** # rules to build gawk gawk: $(ALLOBJS) $(GNUOBJS) ! $(CC) -o gawk $(CFLAGS) $(ALLOBJS) $(GNUOBJS) -lm $(AWKOBJS): awk.h --- 158,164 ---- # rules to build gawk gawk: $(ALLOBJS) $(GNUOBJS) ! $(CC) -o gawk $(CFLAGS) $(ALLOBJS) $(GNUOBJS) #-lm $(AWKOBJS): awk.h *** 1.1 1991/12/11 16:18:17 --- awk.h 1991/12/11 17:07:45 *************** *** 42,51 **** extern char *alloca(); #endif #else extern char *alloca(); #endif #ifdef SPRINTF_INT ! extern int sprintf(); #else /* not USG */ /* nasty nasty berkelixm */ #define setjmp _setjmp --- 42,53 ---- extern char *alloca(); #endif #else + #ifndef alloca extern char *alloca(); #endif + #endif #ifdef SPRINTF_INT ! /* extern int sprintf(); XXX LINUX */ #else /* not USG */ /* nasty nasty berkelixm */ #define setjmp _setjmp *************** *** 78,99 **** extern char *memset(char *, int, int); /* extern int fprintf(FILE *, char *, ...); */ ! extern int fprintf(); extern int vfprintf(); #ifndef MSDOS ! extern int fwrite(char *, int, int, FILE *); #endif extern int fflush(FILE *); extern int fclose(FILE *); extern int pclose(FILE *); #ifndef MSDOS ! extern int fputs(char *, FILE *); #endif extern void abort(); extern int isatty(int); extern void exit(int); extern int system(char *); extern int sscanf(/* char *, char *, ... */); extern double atof(char *); extern int fstat(int, struct stat *); --- 80,104 ---- extern char *memset(char *, int, int); /* extern int fprintf(FILE *, char *, ...); */ ! /* extern int fprintf(); XXXL */ extern int vfprintf(); #ifndef MSDOS ! /* extern int fwrite(char *, int, int, FILE *); XXXL */ #endif extern int fflush(FILE *); extern int fclose(FILE *); extern int pclose(FILE *); #ifndef MSDOS ! /* extern int fputs(char *, FILE *); XXXL */ #endif extern void abort(); extern int isatty(int); extern void exit(int); extern int system(char *); + #if 0 + /* XXXL */ extern int sscanf(/* char *, char *, ... */); + #endif extern double atof(char *); extern int fstat(int, struct stat *); *************** *** 100,110 **** extern off_t lseek(int, off_t, int); extern int fseek(FILE *, long, int); extern int close(int); ! extern int open(); extern int pipe(int *); extern int dup2(int, int); #ifndef MSDOS ! extern int unlink(char *); #endif extern int fork(); extern int execl(/* char *, char *, ... */); --- 105,115 ---- extern off_t lseek(int, off_t, int); extern int fseek(FILE *, long, int); extern int close(int); ! /* extern int open(); XXXL */ extern int pipe(int *); extern int dup2(int, int); #ifndef MSDOS ! /* extern int unlink(char *); XXXL */ #endif extern int fork(); extern int execl(/* char *, char *, ... */); *** 1.1 1991/12/11 16:29:17 --- awk.y 1991/12/11 17:08:04 *************** *** 96,102 **** %type func_name %token FUNC_CALL NAME REGEXP ! %token ERROR %token NUMBER YSTRING %token RELOP APPEND_OP %token ASSIGNOP MATCHOP NEWLINE CONCAT_OP --- 96,102 ---- %type func_name %token FUNC_CALL NAME REGEXP ! %token ERROR_TOK %token NUMBER YSTRING %token RELOP APPEND_OP %token ASSIGNOP MATCHOP NEWLINE CONCAT_OP *************** *** 386,401 **** nls : NEWLINE ! { $$ = NULL; } | nls NEWLINE ! { $$ = NULL; } ; opt_nls : /* empty */ ! { $$ = NULL; } | nls ! { $$ = NULL; } ; input_redir --- 386,401 ---- nls : NEWLINE ! { $$ = (NODETYPE) NULL; } | nls NEWLINE ! { $$ = (NODETYPE) NULL; } ; opt_nls : /* empty */ ! { $$ = (NODETYPE) NULL; } | nls ! { $$ = (NODETYPE) NULL; } ; input_redir *************** *** 953,959 **** case '\\': if (*lexptr++ == '\0') { yyerror("unterminated regexp ends with \\"); ! return ERROR; } else if (lexptr[-1] == '\n') goto retry; break; --- 953,959 ---- case '\\': if (*lexptr++ == '\0') { yyerror("unterminated regexp ends with \\"); ! return ERROR_TOK; } else if (lexptr[-1] == '\n') goto retry; break; *************** *** 969,975 **** case '\0': lexptr--; /* so error messages work */ yyerror("unterminated regexp"); ! return ERROR; } } } --- 969,975 ---- case '\0': lexptr--; /* so error messages work */ yyerror("unterminated regexp"); ! return ERROR_TOK; } } } *************** *** 1163,1169 **** case '\n': lexptr--; yyerror("unterminated string"); ! return ERROR; case '"': yylval.nodeval = make_str_node(tokstart + 1, lexptr-tokstart-2, esc_seen); --- 1163,1169 ---- case '\n': lexptr--; yyerror("unterminated string"); ! return ERROR_TOK; case '"': yylval.nodeval = make_str_node(tokstart + 1, lexptr-tokstart-2, esc_seen); *************** *** 1171,1177 **** return YSTRING; } } ! return ERROR; case '-': if (*lexptr == '=') { --- 1171,1177 ---- return YSTRING; } } ! return ERROR_TOK; case '-': if (*lexptr == '=') { *************** *** 1256,1262 **** } return LEX_AND; } ! return ERROR; case '|': if (*lexptr == '|') { --- 1256,1262 ---- } return LEX_AND; } ! return ERROR_TOK; case '|': if (*lexptr == '|') { *************** *** 1279,1285 **** if (c != '_' && ! isalpha(c)) { yyerror("Invalid char '%c' in expression\n", c); ! return ERROR; } /* it's some type of name-type-thing. Find its length */ --- 1279,1285 ---- if (c != '_' && ! isalpha(c)) { yyerror("Invalid char '%c' in expression\n", c); ! return ERROR_TOK; } /* it's some type of name-type-thing. Find its length */