=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/awk/awk.h,v retrieving revision 1.28 retrieving revision 1.29 diff -c -r1.28 -r1.29 *** src/usr.bin/awk/awk.h 2022/09/01 15:21:28 1.28 --- src/usr.bin/awk/awk.h 2023/09/17 14:49:44 1.29 *************** *** 1,4 **** ! /* $OpenBSD: awk.h,v 1.28 2022/09/01 15:21:28 millert Exp $ */ /**************************************************************** Copyright (C) Lucent Technologies 1997 All Rights Reserved --- 1,4 ---- ! /* $OpenBSD: awk.h,v 1.29 2023/09/17 14:49:44 millert Exp $ */ /**************************************************************** Copyright (C) Lucent Technologies 1997 All Rights Reserved *************** *** 80,85 **** --- 80,87 ---- extern Awkfloat *RSTART; extern Awkfloat *RLENGTH; + extern bool CSV; /* true for csv input */ + extern char *record; /* points to $0 */ extern int lineno; /* line number in awk program */ extern int errorflag; /* 1 if error has occurred */ *************** *** 236,242 **** /* structures used by regular expression matching machinery, mostly b.c: */ ! #define NCHARS (256+3) /* 256 handles 8-bit chars; 128 does 7-bit */ /* watch out in match(), etc. */ #define HAT (NCHARS+2) /* matches ^ in regular expr */ #define NSTATES 32 --- 238,245 ---- /* structures used by regular expression matching machinery, mostly b.c: */ ! #define NCHARS (1256+3) /* 256 handles 8-bit chars; 128 does 7-bit */ ! /* BUG: some overflows (caught) if we use 256 */ /* watch out in match(), etc. */ #define HAT (NCHARS+2) /* matches ^ in regular expr */ #define NSTATES 32 *************** *** 247,258 **** int i; Node *np; uschar *up; } lval; /* because Al stores a pointer in it! */ int *lfollow; } rrow; typedef struct fa { ! unsigned int **gototab; uschar *out; uschar *restr; int **posns; --- 250,268 ---- int i; Node *np; uschar *up; + int *rp; /* rune representation of char class */ } lval; /* because Al stores a pointer in it! */ int *lfollow; } rrow; + typedef struct gtt { /* gototab entry */ + unsigned int ch; + unsigned int state; + } gtt; + typedef struct fa { ! gtt **gototab; ! int gototab_len; uschar *out; uschar *restr; int **posns;