/******************************************** sizes.h copyright 1991, 1992. Michael D. Brennan This is a source file for mawk, an implementation of the AWK programming language. Mawk is distributed without warranty under the terms of the GNU General Public License, version 2, 1991. ********************************************/ /* $Log: sizes.h,v $ * Revision 1.8 1995/10/14 22:09:51 mike * getting MAX__INT from values.h didn't really work since the value was * unusable in an #if MAX__INT <= 0x7fff * at least it didn't work under sunos -- so use of values.h is a goner * * Revision 1.7 1995/06/18 19:17:51 mike * Create a type Int which on most machines is an int, but on machines * with 16bit ints, i.e., the PC is a long. This fixes implicit assumption * that int==long. * * Revision 1.6 1994/10/10 01:39:01 mike * get MAX__INT from limits.h or values.h * * Revision 1.5 1994/10/08 19:15:53 mike * remove SM_DOS * * Revision 1.4 1994/09/25 23:00:49 mike * remove #if 0 * * Revision 1.3 1993/07/15 23:56:15 mike * general cleanup * * Revision 1.2 1993/07/04 12:52:13 mike * start on autoconfig changes * * Revision 5.3 1992/12/17 02:48:01 mike * 1.1.2d changes for DOS * * Revision 5.2 1992/08/27 03:20:08 mike * patch2: increase A_HASH_PRIME * * Revision 5.1 1991/12/05 07:59:35 brennan * 1.1 pre-release * */ /* sizes.h */ #ifndef SIZES_H #define SIZES_H #ifndef MAX__INT #include #define MAX__INT INT_MAX #define MAX__LONG LONG_MAX #endif /* MAX__INT */ #if MAX__INT <= 0x7fff #define SHORT_INTS #define INT_FMT "%ld" typedef long Int ; #define Max_Int MAX__LONG #else #define INT_FMT "%d" typedef int Int ; #define Max_Int MAX__INT #endif #define EVAL_STACK_SIZE 256 /* initial size , can grow */ /* number of fields at startup, must be a power of 2 and FBANK_SZ-1 must be divisible by 3! */ #define FBANK_SZ 256 #define FB_SHIFT 8 /* lg(FBANK_SZ) */ #define NUM_FBANK 128 /* see MAX_FIELD below */ #define MAX_SPLIT (FBANK_SZ-1) /* needs to be divisble by 3*/ #define MAX_FIELD (NUM_FBANK*FBANK_SZ - 1) #define MIN_SPRINTF 400 #define BUFFSZ 4096 /* starting buffer size for input files, grows if necessary */ #ifdef MSDOS /* trade some space for IO speed */ #undef BUFFSZ #define BUFFSZ 8192 /* maximum input buffers that will fit in 64K */ #define MAX_BUFFS ((int)(0x10000L/BUFFSZ) - 1) #endif #define HASH_PRIME 53 #define A_HASH_PRIME 199 #define MAX_COMPILE_ERRORS 5 /* quit if more than 4 errors */ #endif /* SIZES_H */