#
/*
 *	General definitions for Harris /6 C compiler
 */
# define makecc(val,i)  lastcon = i ? (val<<8)|lastcon : val
# define ARGINIT	48
# define AUTOINIT	0
# define SZCHAR		8
# define SZINT		24
# define SZFLOAT	48
# define SZDOUBLE	48
# define SZLONG		48
# define SZSHORT	24
# define SZPOINT	24
# define ALCHAR		8
# define ALINT		24
# define ALFLOAT	24
# define ALDOUBLE	24
# define ALLONG		24
# define ALSHORT	24
# define ALPOINT	24
# define ALSTRUCT	24
# define ALSTACK	24
/*
 *	size in which constants are converted
 *	should be long if feasable
 */
typedef long int	CONSZ;
# define CONFMT "%ld"
/*
 *	size in which offsets are kept
 *	should be large enough to cover address space in bits
 */
typedef long int	OFFSZ;
/*
 *	size to keep cookies, need one bit per cookie
 */
#if slash6
typedef unsigned int	COOKSZ;
#else
typedef long int	COOKSZ;
#endif
/*
 *	size to keep needs, need about one bit per need
 */
typedef unsigned int	NEEDSZ;
/*
 *	size to keep shapes in, probably the same as cookie
 */
#if slash6
typedef unsigned int	SHAPESZ;
#else
typedef long int	SHAPESZ;
#endif
/*
 * 	character set macro
 */
# define  CCTRANS(x) x
/*
 *	register cookie for stack poINTer
 */
# define STKREG		6
# define ARGREG		6
/*
 *	maximum and minimum register variables
 *	since there are none here this is easy
 */
# define MAXRVAR	0
# define MINRVAR	0
/*
 *	various standard pieces of code are used
 */
# define STDPRTREE
# define LABFMT "L%d\n"
/*
 *	definition indicates automatics and/or temporaries
 *	are on a negative growing stack
 */
# define BACKAUTO
# define BACKTEMP
/*
 *	NOTE that bytes are numbered left to right on /6
 */
# undef	RTOLBYTES
# define EXIT dexit
# define ENUMSIZE(high,low) INT
# define NCHPERINT	(SZINT/SZCHAR)
/*
 * macro to turn byte quantities into 24-bit ints (round)
 */
# define INTROUND(x)	(((x-1)/3)+1)
# define BYTES		010
# define WORDS		020
# define NOTYPE		0
