|
|
1.1 root 1: /*
2: * Copyright (c) 1980 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)fio.h 5.1 (Berkeley) 6/7/85
7: */
8:
9: /*
10: * f77 file i/o common definitions
11: */
12:
13: #include "fiodefs.h"
14:
15: #define LOCAL static
16: #define err(f,n,s) {if(f) return(errno=n); else fatal(n,s);}
17: #define not_legal(u) (u>=MXUNIT || u<0)
18: #define GET(x) if((x=(*getn)())<0) return(x)
19: #define VAL(x) (x!='\n'?x:' ')
20: #define PUT(x) {if(n=(*putn)(x)) return(n);}
21: #define lcase(s) ((s >= 'A') && (s <= 'Z') ? s+('a'-'A') : s)
22:
23: #define MAXINTLENGTH 32 /* to accomodate binary format */
24:
25: long ftell();
26:
27: extern int errno;
28: extern ioflag init;
29: extern flag reading,external,sequential,formatted;
30: extern int (*getn)(),(*putn)(),(*ungetn)(); /*for formatted io*/
31: extern FILE *cf; /*current file structure*/
32: extern unit *curunit; /*current unit structure */
33: extern int lunit; /*current logical unit*/
34: extern char *lfname; /*current filename*/
35: extern unit units[]; /*logical units table*/
36: extern int recpos; /*position in current record*/
37: extern ftnint recnum; /*current record number*/
38: extern int reclen; /* current record length */
39: extern int (*doed)(), (*doned)();
40: extern int (*dorevert)(), (*donewrec)(), (*doend)(), (*dotab)();
41: extern ioflag cblank, cplus, tab, elist, signit, errflag, endflag;
42: extern char *fmtbuf, *icptr, *icend, *fmtptr;
43: extern int scale;
44: extern int cursor;
45: extern int radix;
46: extern struct ioiflg ioiflg_;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.