V10/cmd/f2c/f2c.h0

/* f2c.h  --  Standard Fortran to C header file */

/**  barf  [ba:rf]  2.  "He suggested using FORTRAN, and everybody barfed."

	- From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */

#ifndef F2C_INCLUDE
#define F2C_INCLUDE

typedef long int integer;
typedef char *address;
typedef short int shortint;
typedef float real;
typedef double doublereal;
typedef struct { real r, i; } complex;
typedef struct { doublereal r, i; } doublecomplex;
typedef long int logical;
typedef short int shortlogical;

#define TRUE_ (1)
#define FALSE_ (0)

/* Extern is for use with -E */
#ifndef Extern
#define Extern extern
#endif

/* I/O stuff */

#ifdef f2c_i2
/* for -i2 */
typedef short flag;
typedef short ftnlen;
typedef short ftnint;
#else
typedef long flag;
typedef long ftnlen;
typedef long ftnint;
#endif

/*external read, write*/
typedef struct
{	flag cierr;
	ftnint ciunit;
	flag ciend;
	char *cifmt;
	ftnint cirec;
} cilist;

/*internal read, write*/
typedef struct
{	flag icierr;
	char *iciunit;
	flag iciend;
	char *icifmt;
	ftnint icirlen;
	ftnint icirnum;
} icilist;

/*open*/
typedef struct
{	flag oerr;
	ftnint ounit;
	char *ofnm;
	ftnlen ofnmlen;
	char *osta;
	char *oacc;
	char *ofm;
	ftnint orl;
	char *oblnk;
} olist;

/*close*/
typedef struct
{	flag cerr;
	ftnint cunit;
	char *csta;
} cllist;

/*rewind, backspace, endfile*/
typedef struct
{	flag aerr;
	ftnint aunit;
} alist;

/* inquire */
typedef struct
{	flag inerr;
	ftnint inunit;
	char *infile;
	ftnlen infilen;
	ftnint	*inex;	/*parameters in standard's order*/
	ftnint	*inopen;
	ftnint	*innum;
	ftnint	*innamed;
	char	*inname;
	ftnlen	innamlen;
	char	*inacc;
	ftnlen	inacclen;
	char	*inseq;
	ftnlen	inseqlen;
	char 	*indir;
	ftnlen	indirlen;
	char	*infmt;
	ftnlen	infmtlen;
	char	*inform;
	ftnint	informlen;
	char	*inunf;
	ftnlen	inunflen;
	ftnint	*inrecl;
	ftnint	*innrec;
	char	*inblank;
	ftnlen	inblanklen;
} inlist;

#define VOID void

union Multitype {	/* for multiple entry points */
	shortint h;
	integer i;
	real r;
	doublereal d;
	complex c;
	doublecomplex z;
	};

typedef union Multitype Multitype;
	

	/* fix up name clashes */

#define acos__ acos_
#define asin__ asin_
#define asm__ asm_
#define auto__ auto_
#define break__ break_
#define case__ case_
#define char__ char_
#define const__ const_
#define cos__ cos_
#define cosh__ cosh_
#define do__ do_
#define double__ double_
#define else__ else_
#define entry__ entry_
#define enum__ enum_
#define exp__ exp_
#define extern__ extern_
#define float__ float_
#define for__ for_
#define int__ int_
#define log__ log_
#define long__ long_
#define short__ short_
#define signed__ signed_
#define sin__ sin_
#define sinh__ sinh_
#define sizeof__ sizeof_
#define sqrt__ sqrt_
#define static__ static_
#define struct__ struct_
#define switch__ switch_
#define tan__ tan_
#define tanh__ tanh_
#define union__ union_
#define void__ void_
#define while__ while_
#define pow_ii_ pow_ii
#define pow_ri_ pow_ri
#define pow_di_ pow_di
#define pow_ci_ pow_ci
#define pow_zi_ pow_zi
#define pow_hh_ pow_hh
#define pow_dd_ pow_dd
#define pow_zz_ pow_zz
#endif