Classes | Defines | Typedefs | Enumerations | Functions | Variables

fio.h File Reference

#include "fstats.h"
#include <errno.h>
#include <ffio.h>
#include <fortran.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/iosw.h>
#include <cray/assign.h>
#include <cray/fndc.h>
#include <cray/format.h>
#include <cray/fortio.h>
#include <cray/mtlock.h>
#include <cray/dopevec.h>
#include <cray/nassert.h>
#include <cray/portdefs.h>
Include dependency graph for fio.h:

Go to the source code of this file.

Classes

union  FP
struct  unit_s
struct  fiostate
union  fiostate::iostate
struct  fiostate::iostate::unfstate
struct  fiostate::iostate::fmtstate
struct  olist
struct  cllist
struct  inlist
struct  type_information_packet

Defines

#define PRINT_TIP(tipa)
#define HASH_SIZE   256
#define STDIN_U   100
#define STDOUT_U   101
#define STDERR_U   102
#define RECMAX   1024
#define RECMAXLDO   133
#define ERROR   1
#define OK   0
#define YES   1
#define NO   0
#define WRITE   1
#define READ   2
#define SEQ   3
#define DIR   4
#define FMT   5
#define UNF   6
#define EXT   7
#define INT   8
#define TF_WRITE   001
#define TF_READ   002
#define TF_POS   004
#define TF_FMT   010
#define T_WSF   (00100 | TF_WRITE | TF_POS | TF_FMT )
#define T_WSU   (00200 | TF_WRITE | TF_POS )
#define T_WDF   (00300 | TF_WRITE | TF_POS | TF_FMT )
#define T_WDU   (00400 | TF_WRITE | TF_POS )
#define T_WLIST   (00500 | TF_WRITE | TF_POS )
#define T_WNL   (00600 | TF_WRITE | TF_POS )
#define T_RSF   (00700 | TF_READ | TF_POS | TF_FMT )
#define T_RSU   (01100 | TF_READ | TF_POS )
#define T_RDF   (01200 | TF_READ | TF_POS | TF_FMT )
#define T_RDU   (01300 | TF_READ | TF_POS )
#define T_RLIST   (01400 | TF_READ | TF_POS )
#define T_RNL   (01500 | TF_READ | TF_POS )
#define T_BUFOUT   (01600 | TF_POS )
#define T_BUFIN   (01700 | TF_POS )
#define T_OPEN   (02000 )
#define T_REWIND   (02100 | TF_POS )
#define T_BACKSPACE   (02200 | TF_POS )
#define T_ENDFILE   (02300 | TF_POS )
#define T_CLOSE   (02400 )
#define T_INQF   (02500 )
#define T_INQU   (02600 )
#define T_MISC   (02700 | TF_POS )
#define T_GETPOS   (03000 )
#define T_SETPOS   (03100 | TF_POS )
#define T_LENGTH   (03200 )
#define T_UNIT   (03300 )
#define T_TAPE   (03400 | TF_POS )
#define T_FLUSH   (03500 )
#define T_NUMBLKS   (03600 )
#define DT_NONE   0
#define DT_INT   1
#define DT_REAL   2
#define DT_DBLE   3
#define DT_CMPLX   4
#define DT_LOG   5
#define DT_CHAR   6
#define DT_SINT   7
#define DT_DBLCOM   8
#define DT_MAX   9
#define BLKSIZE   4096
#define SECTOR   BLKSIZE
#define DEF_BIN_BS   1
#define DEF_SBIN_BS   1
#define DFBUFSZ   8
#define SFBUFSZ   8
#define DUBUFSZ   8
#define SUBUFSZ   48
#define DEFAULT_NBUF   4
#define TBUFSZW   36
#define TBUFSZB   (TBUFSZW * sizeof(long))
#define CHBUFSIZE   (1024 * sizeof(long))
#define IO_OKAY   0
#define IO_ERR   1
#define IO_END   2
#define CNT   1
#define EOR   0
#define EOF   -1
#define EOD   -2
#define IOERR   -1
#define PARTIAL   0
#define FULL   1
#define CLST_UNSPEC   0
#define CLST_KEEP   1
#define CLST_DELETE   2
#define _UERRF   01
#define _UEORF   02
#define _UENDF   04
#define _UIOSTF   010
#define _UERRC   020
#define _UEORC   040
#define _UENDC   0100
#define CVOLATILE   volatile
#define UNIT_HEADER   (offsetof(unit, auxlockp))
#define ABORT_ON_ERROR   (cup == NULL || (cup->uflag & (_UERRF | _UIOSTF)) == 0)
#define RERROR(n)
#define RERROR1(n, p)
#define GOERROR(err, label)   { errn = err; goto label; }
#define GOERROR1(err, p, label)   { errn = err; parm = p; goto label; }
#define REND(n)
#define INITIALIZE_LOCK(x)   mutex_init(&(x), USYNC_THREAD, NULL)
#define OPENLOCK()   MEM_LOCK(&_openlock)
#define OPENUNLOCK()   MEM_UNLOCK(&_openlock)
#define PARSELOCK()   MEM_LOCK(&_parselock)
#define PARSEUNLOCK()   MEM_UNLOCK(&_parselock)
#define FLSH_MEM()   { _flsh_mem(); }
#define MAX(a, b)   ((a) > (b) ? (a) : (b))
#define MIN(a, b)   ((a) < (b) ? (a) : (b))
#define FF2FTNST(ffstat)   _ffstat_cnvt[ffstat]
#define AIOCHK(cup)
#define MAXRECALL   1000000
#define WAITIO(cup, error_handle)
#define POWER_OF_TWO(n)   ((n & (n - 1)) == 0 && n != 0)
#define COMPADD(cup, pbytes, pbits, pval)   pbytes = pbits = pval = 0;
#define CREATE_F90_INFO(ts, tip, type77)
#define GOOD_UNUM(u)   ((u) >= 0)
#define RSVD_UNUM(_U)   ((_U) >= STDIN_U && (_U) <= STDERR_U)
#define OPEN_UPTR(_U)   ((_U) != NULL && (_U)->ufs != 0)
#define UHASH(x)   (x & (HASH_SIZE - 1))
#define UNIT_NUM(_U)   ((_U)->uid)
#define GT_UNUM(_U, _N)   { _N = UNIT_NUM(_U); }
#define MYTASK   0
#define _rtc()   0
#define INCRINIO
#define CHKSTOP
#define STMT_BEGIN(_UNUM, _INTFLAG, _STMTCODE, _CILIST, _LOCFIOSP, _CUP)
#define STMT_END(_CUP, _STATSCODE, _CILIST, _LOCFIOSP)
#define CFT77_RETVAL(_VAL)   (_VAL)
#define GET_FIOS_PTR(_P)   _P = &_tsk_fiostate;
#define IO_TYPE(_U)
#define errfile   stderr

Typedefs

typedef short s_flag
typedef long ftnlen
typedef _f_comp8 _gen_complex
typedef long bcont
typedef struct unit_s unit
struct {
   unit *   ulist
unit_htable
typedef struct fiostateFIOSPTR
typedef struct
type_information_packet 
type_packet
typedef int xfer_func (FIOSPTR css, unit *cup, void *dptr, type_packet *tip, int mode)
typedef long xfer_func_c (unit *cup, void *uda, type_packet *tip, int mode, int *ubc_ret, long *wr, int *status)

Enumerations

enum  status_spec {
  OS_UNKNOWN = 1, OS_OLD, OS_NEW, OS_SCRATCH,
  OS_REPLACE
}
enum  access_spec { OS_SEQUENTIAL = 1, OS_DIRECT }
enum  form_spec { OS_FORMATTED = 1, OS_UNFORMATTED, OS_BINARY, OS_SYSTEM }
enum  blank_spec { OS_NULL = 1, OS_ZERO }
enum  position_spec { OS_REWIND = 1, OS_ASIS, OS_APPEND }
enum  action_spec { OS_ACTION_UNSPECIFIED = 0, OS_READ = 1, OS_WRITE = 2, OS_READWRITE = (OS_READ | OS_WRITE) }
enum  delim_spec { OS_NONE = 1, OS_QUOTE, OS_APOSTROPHE }
enum  pad_spec { OS_NO = 1, OS_YES }

Functions

unit_alloc_unit (unum_t unum, int private)
void _fcleanup (void)
void _fcontext (FIOSPTR fiosp)
void _ferr (FIOSPTR fiosp, int _Errno,...)
long _frch (unit *_Cup, long *_Uda, long _Chars, int _Mode, long *_Status)
long _fwch (unit *_Cup, long *_Uda, long _Chars, int _Mode)
unit_search_unit_list (unit *p, unum_t unum)
unit_get_next_unit (unit *p, int iflock, int iftask)
unit_implicit_open (int acc, int form, unum_t unum, int errf, int *errn)
unit_imp_open (struct fiostate *css, int acc, int form, unum_t unum, int errf, int *errn)
unit_imp_open77 (struct fiostate *css, int acc, int form, unum_t unum, int errf, int *errn)
void _initialize_fortran_io (void)
void _init_unit (unit *cup)
unit_init_internal_unit (void)
int _parse (FIOSPTR _Css, unit *_Cup, fmt_type **_Prsfmt)
int _unit_bksp (unit *cup)
int _unit_close (unit *cup, int cstat, FIOSPTR css)
int _unit_scratch (unit *cup)
int _unit_seek (unit *cup, recn_t recn, int iost)
int _unit_trunc (unit *cup)
int _setpos (FIOSPTR css, unit *cup, int *pa, int len)
int _uniqinod (unit *cup, assign_info *aip)
int _f_opn (char *actnam, unit *cup, FIOSPTR css, int tufs, int aifound, assign_info *aip, struct stat *statp, int statp_valid, int catcherr, int o_sysflgs)
int _do_open (unit *cup, FIOSPTR css, int tufs, char *actnam, int flags, int aifound, assign_info *aip, union spec_u *fdspec, int catcherr)
void _set_device_and_inode (int sysfd, dev_t *devicep, ino_t *inodep)
int _dw_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
int _iw_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
int _sw_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
int _nonadv_endrec (FIOSPTR _Css, unit *_Cup)
int _lw_after_nonadv (FIOSPTR _Css, unit *_Cup, int _Linelimit, int _Namelistflag)
int _dr_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
int _ir_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
int _sr_endrec (FIOSPTR _Css, unit *_Cup, int _Count)
void _gather_data (void *lbuf, long items, long inc, int len, void *ptr)
void _scatter_data (void *ptr, long items, long inc, int len, void *lbuf)
void _set_ok_flags (unit *cup)
int _get_mismatch_error (int noabort, int iost, unit *cup, FIOSPTR css)
int _iochunk (FIOSPTR css, unit *cup, xfer_func *func, struct DvDimen *dimen, type_packet *tip, short nd, long extent, int bshft, bcont *addr)
void _flsh_mem (void)
int _deduce_fstruct (int, struct fdinfo *, int)
void _setup_cvrt (unit *cup)
void _b_char (char *a, char *b, ftnlen blen)
void _copy_n_trim (char *a, ftnlen alen, char *b)
static unit_get_cup (unum_t unum)
static unit_get_int_cup (void)
static void _release_cup (unit *cup)

Variables

xfer_func _rdunf
xfer_func _wrunf
xfer_func _rdfmt
xfer_func _wrfmt
xfer_func _ld_read
xfer_func _ld_write
xfer_func_c _frwd
xfer_func_c _fwwd
unit_htable _fort_unit []
plock_t _openlock
plock_t _ioblock
plock_t _parselock
plock_t _stdin_lock
plock_t _stdout_lock
plock_t _stderr_lock
int _f_rcsz
int _f_ldsz
int _def_bin_bs
int _def_sbin_bs
const ftype_t _f77_to_f90_type_cnvt [DT_MAX]
const short _f90_to_f77_type_cnvt [DVTYPE_NTYPES]
const short _f77_type_len [DT_MAX]
const char * _f90_type_name [DVTYPE_NTYPES]
const char * _f77_type_name [DT_MAX]
const short _charset_cnvt [CS_MAX]
const short _ffstat_cnvt [7]
const short _old_namelist_to_f77_type_cnvt [10]
type_packet __tip_null
struct fiostate _tsk_fiostate
short _fortran_io_is_init
short _e_fortran_io_is_init
short _i_fortran_io_is_init
unit_fort_internal_unit

Define Documentation

#define _rtc (  )     0

Definition at line 1187 of file fio.h.

Referenced by _ft_stclose(), _ft_stopen(), and _unit_close().

#define _UENDC   0100

Definition at line 303 of file fio.h.

Referenced by _RUF(), and _RUI().

#define _UENDF   04

Definition at line 298 of file fio.h.

Referenced by _FRF(), _FRN(), _FRU(), _rdfmt(), _RUF(), _RUI(), and RNL().

#define _UEORC   040

Definition at line 302 of file fio.h.

#define _UEORF   02

Definition at line 297 of file fio.h.

Referenced by _FRF(), and _rdfmt().

#define _UERRC   020

Definition at line 301 of file fio.h.

Referenced by _RUF(), _RUI(), and _WUF().

#define _UERRF   01

Definition at line 296 of file fio.h.

Referenced by _CLS(), _FRF(), _FRN(), _FRU(), _FWF(), _FWN(), _FWU(), _rdfmt(), _RUF(), _RUI(), _wrfmt(), _WUF(), _WUI(), RNL(), and WNL().

#define _UIOSTF   010

Definition at line 299 of file fio.h.

Referenced by _CLS(), _FRF(), _FRN(), _FRU(), _FWF(), _FWN(), _FWU(), _rdfmt(), _RUF(), _RUI(), _wrfmt(), _WUF(), and _WUI().

#define ABORT_ON_ERROR   (cup == NULL || (cup->uflag & (_UERRF | _UIOSTF)) == 0)

Definition at line 866 of file fio.h.

Referenced by _get_dc_param().

#define AIOCHK (   cup  ) 

Definition at line 978 of file fio.h.

#define BLKSIZE   4096

Definition at line 190 of file fio.h.

Referenced by _f_opn().

#define CFT77_RETVAL (   _VAL  )     (_VAL)

Definition at line 1276 of file fio.h.

Referenced by __OPN(), _BACK(), _CLS(), _EOFW(), _INQ(), _REWF(), _RUF(), _RUI(), _WUF(), _WUI(), RNL(), and WNL().

#define CHBUFSIZE   (1024 * sizeof(long))

Definition at line 229 of file fio.h.

Referenced by _iochunk(), and _strip_mine().

#define CHKSTOP

Definition at line 1200 of file fio.h.

#define CLST_DELETE   2

Definition at line 284 of file fio.h.

Referenced by _unit_close().

#define CLST_KEEP   1

Definition at line 283 of file fio.h.

Referenced by _CLS(), and _unit_close().

#define CLST_UNSPEC   0

Definition at line 282 of file fio.h.

Referenced by _f_open(), _fcleanup(), and _unit_close().

#define CNT   1

Definition at line 243 of file fio.h.

#define COMPADD (   cup,
  pbytes,
  pbits,
  pval 
)    pbytes = pbits = pval = 0;

Definition at line 1082 of file fio.h.

Referenced by _frwd(), _fwwd(), _rb(), and _wb().

#define CREATE_F90_INFO (   ts,
  tip,
  type77 
)
Value:
{                       \
        ts.type         = _f77_to_f90_type_cnvt[type77];        \
        ts.dpflag       = (type77 == DT_DBLE) ? 1 : 0;          \
        ts.int_len      = _f77_type_len[type77] << 3;           \
        ts.dec_len      = ts.int_len >> 3;                      \
        if (type77 == DT_SINT) {                                \
                ts.kind_or_star = DVD_STAR;                     \
                if (ts.dec_len == sizeof(_f_int))               \
                        ts.dec_len      = ts.dec_len >> 1;      \
        }                                                       \
        else                                                    \
                ts.kind_or_star = DVD_DEFAULT;                  \
        tip.type77      = type77;                               \
        tip.type90      = ts.type;                              \
        tip.intlen      = ts.int_len;                           \
        tip.extlen      = ts.int_len;                           \
        tip.elsize      = ts.int_len >> 3;                      \
        tip.stride      = 1;                                    \
        tip.cnvindx     = 0;                                    \
}

Definition at line 1097 of file fio.h.

#define CVOLATILE   volatile

Definition at line 333 of file fio.h.

#define DEF_BIN_BS   1

Definition at line 196 of file fio.h.

#define DEF_SBIN_BS   1

Definition at line 197 of file fio.h.

Referenced by _do_open().

#define DEFAULT_NBUF   4

Definition at line 217 of file fio.h.

#define DFBUFSZ   8

Definition at line 206 of file fio.h.

#define DIR   4
#define DT_CHAR   6

Definition at line 180 of file fio.h.

Referenced by get_holl(), get_quoholl(), l_write(), n_getv(), nex_data(), nl_read(), RNL(), and WNL().

#define DT_CMPLX   4

Definition at line 178 of file fio.h.

Referenced by find_rep(), g_complx(), g_octhex(), get_holl(), get_quoholl(), l_write(), nex_data(), and nl_read().

#define DT_DBLCOM   8

Definition at line 182 of file fio.h.

#define DT_DBLE   3

Definition at line 177 of file fio.h.

Referenced by find_rep(), g_number(), g_octhex(), get_holl(), get_quoholl(), l_convert(), l_write(), and nl_read().

#define DT_INT   1

Definition at line 175 of file fio.h.

Referenced by _get_dc_param(), l_convert(), and l_write().

#define DT_LOG   5

Definition at line 179 of file fio.h.

Referenced by l_convert(), l_write(), and nex_data().

#define DT_MAX   9

Definition at line 184 of file fio.h.

Referenced by nl_read().

#define DT_NONE   0

Definition at line 174 of file fio.h.

Referenced by l_write().

#define DT_REAL   2

Definition at line 176 of file fio.h.

Referenced by _get_dc_param(), g_complx(), l_convert(), and l_write().

#define DT_SINT   7

Definition at line 181 of file fio.h.

Referenced by _get_dc_param(), l_convert(), and l_write().

#define DUBUFSZ   8

Definition at line 213 of file fio.h.

Referenced by _f_opn().

#define EOD   -2

Definition at line 248 of file fio.h.

Referenced by __READ(), __READC(), _dr_endrec(), _rb(), _rnl_fillrec(), and _sr_endrec().

#define EOF   -1

Definition at line 246 of file fio.h.

#define EOR   0

Definition at line 244 of file fio.h.

#define errfile   stderr

Definition at line 1384 of file fio.h.

Referenced by _f_open(), _fcontext(), _pr_echomsg(), and pr_msg().

#define ERROR   1
#define EXT   7

Definition at line 120 of file fio.h.

#define FF2FTNST (   ffstat  )     _ffstat_cnvt[ffstat]

Definition at line 967 of file fio.h.

Referenced by _frch(), and _frwd().

#define FLSH_MEM (  )     { _flsh_mem(); }

Definition at line 945 of file fio.h.

Referenced by _alloc_unit(), and _init_internal_unit().

#define FMT   5

Definition at line 118 of file fio.h.

Referenced by __READC(), __WRITEC(), _FRF(), _FRN(), _FWF(), _FWN(), _nlrdecho(), _rnlecho(), RNL(), and WNL().

#define FULL   1

Definition at line 257 of file fio.h.

#define GET_FIOS_PTR (   _P  )     _P = &_tsk_fiostate;

Definition at line 1286 of file fio.h.

Referenced by _ibmerr(), _implicit_open(), _rnlecho(), _RUF(), _RUI(), _WUF(), _WUI(), RNL(), and WNL().

#define GOERROR (   err,
  label 
)    { errn = err; goto label; }

Definition at line 882 of file fio.h.

#define GOERROR1 (   err,
  p,
  label 
)    { errn = err; parm = p; goto label; }

Definition at line 883 of file fio.h.

#define GOOD_UNUM (   u  )     ((u) >= 0)
#define GT_UNUM (   _U,
  _N 
)    { _N = UNIT_NUM(_U); }

Definition at line 1151 of file fio.h.

#define HASH_SIZE   256

Definition at line 100 of file fio.h.

Referenced by _get_next_unit().

#define INCRINIO

Definition at line 1199 of file fio.h.

#define INITIALIZE_LOCK (   x  )     mutex_init(&(x), USYNC_THREAD, NULL)

Definition at line 913 of file fio.h.

Referenced by _alloc_unit(), and _init_internal_unit().

#define INT   8

Definition at line 121 of file fio.h.

#define IO_END   2

Definition at line 237 of file fio.h.

#define IO_ERR   1

Definition at line 236 of file fio.h.

#define IO_OKAY   0

Definition at line 235 of file fio.h.

#define IO_TYPE (   _U  ) 
Value:
((_U->useq) ?           \
                (_U->ufmt ? FIO_SF : FIO_SU):   \
                (_U->ufmt ? FIO_DF : FIO_DU))

Definition at line 1296 of file fio.h.

Referenced by _fcontext(), _ft_stclose(), and _ft_stopen().

#define IOERR   -1

Definition at line 250 of file fio.h.

#define MAX (   a,
  b 
)    ((a) > (b) ? (a) : (b))

Definition at line 962 of file fio.h.

#define MAXRECALL   1000000

Definition at line 981 of file fio.h.

#define MIN (   a,
  b 
)    ((a) < (b) ? (a) : (b))

Definition at line 965 of file fio.h.

#define MYTASK   0

Definition at line 1162 of file fio.h.

Referenced by _alloc_unit(), _get_next_unit(), and _search_unit_list().

#define NO   0

Definition at line 112 of file fio.h.

#define OK   0

Definition at line 110 of file fio.h.

#define OPEN_UPTR (   _U  )     ((_U) != NULL && (_U)->ufs != 0)

Definition at line 1137 of file fio.h.

Referenced by __OPN(), _alloc_unit(), _f_open(), _fcleanup(), _fcontext(), _flushall(), _get_cup(), and _get_next_unit().

#define OPENLOCK (  )     MEM_LOCK(&_openlock)

Definition at line 918 of file fio.h.

Referenced by __OPN(), _CLS(), _f_inqu(), _init_internal_unit(), and _ll_implicit_open().

#define OPENUNLOCK (  )     MEM_UNLOCK(&_openlock)

Definition at line 920 of file fio.h.

Referenced by __OPN(), _CLS(), _f_inqu(), _init_internal_unit(), and _ll_implicit_open().

#define PARSELOCK (  )     MEM_LOCK(&_parselock)

Definition at line 922 of file fio.h.

Referenced by _parse().

#define PARSEUNLOCK (  )     MEM_UNLOCK(&_parselock)

Definition at line 924 of file fio.h.

Referenced by _parse().

#define PARTIAL   0

Definition at line 256 of file fio.h.

#define POWER_OF_TWO (   n  )     ((n & (n - 1)) == 0 && n != 0)

Definition at line 1037 of file fio.h.

Referenced by _f_opn().

#define PRINT_TIP (   tipa  ) 
Value:
{       \
        fprintf(stderr, "tip address = %o\n", tipa);            \
        fprintf(stderr, "  type90 = %d\n", (tipa)->type90);     \
        fprintf(stderr, "  type77 = %d\n", (tipa)->type77);     \
        fprintf(stderr, "  intlen = %d\n", (tipa)->intlen);     \
        fprintf(stderr, "  extlen = %d\n", (tipa)->extlen);     \
        fprintf(stderr, " cnvindx = %d\n", (tipa)->cnvindx);    \
        fprintf(stderr, "   count = %ld\n", (tipa)->count);     \
        fprintf(stderr, "  stride = %ld\n", (tipa)->stride);    \
        fprintf(stderr, "  elsize = %d\n", (tipa)->elsize);     \
        if ((tipa)->cnvindx) {                                  \
                fprintf(stderr, " newfunc = %d\n", (tipa)->newfunc);\
                fprintf(stderr, " cnvtype = %d\n", (tipa)->cnvtype);\
                fprintf(stderr, " cnvfunc = %o\n", (tipa)->cnvfunc);\
        }                                                       \
}

Definition at line 77 of file fio.h.

#define READ   2

Definition at line 115 of file fio.h.

Referenced by __OPN().

#define RECMAX   1024

Definition at line 106 of file fio.h.

#define RECMAXLDO   133

Definition at line 107 of file fio.h.

#define REND (   n  ) 
Value:
{       \
        if ((cup == NULL) || (cup->uflag & (_UENDF | _UIOSTF)) == 0)    \
                _ferr(css, n);          \
        else                            \
                return(n);              \
}

Definition at line 895 of file fio.h.

Referenced by _ir_endrec(), _mr_scan_char(), and _sr_endrec().

#define RERROR (   n  ) 
Value:
{                       \
        if (ABORT_ON_ERROR)             \
                _ferr(css, n);          \
        else                            \
                return(n);              \
}

Definition at line 868 of file fio.h.

Referenced by _dr_endrec(), _dw_endrec(), _iw_endrec(), _ld_read(), _ld_write(), _mr_scan_char(), _mr_scan_complex(), _nonadv_endrec(), _nonadv_partrec(), _sr_endrec(), and _sw_endrec().

#define RERROR1 (   n,
  p 
)
Value:
{               \
        if (ABORT_ON_ERROR)             \
                _ferr(css, n, p);       \
        else                            \
                return(n);              \
}

Definition at line 875 of file fio.h.

Referenced by _dr_endrec().

#define RSVD_UNUM (   _U  )     ((_U) >= STDIN_U && (_U) <= STDERR_U)

Definition at line 1130 of file fio.h.

Referenced by __OPN(), _CLS(), _f_inqu(), _f_open(), _uniqinod(), and flush_().

#define SECTOR   BLKSIZE

Definition at line 191 of file fio.h.

#define SEQ   3
#define SFBUFSZ   8

Definition at line 207 of file fio.h.

#define STDERR_U   102

Definition at line 104 of file fio.h.

#define STDIN_U   100

Definition at line 102 of file fio.h.

#define STDOUT_U   101

Definition at line 103 of file fio.h.

#define STMT_BEGIN (   _UNUM,
  _INTFLAG,
  _STMTCODE,
  _CILIST,
  _LOCFIOSP,
  _CUP 
)
Value:
{\
                FIOSPTR fiosp;                                          \
                                                                        \
                assert( _CILIST == NULL );                              \
                if (_LOCFIOSP != NULL)                                  \
                        fiosp   = _LOCFIOSP;                            \
                else                                                    \
                        GET_FIOS_PTR(fiosp);                            \
                if (_INTFLAG)                                           \
                        _CUP    = _get_int_cup(); /* internal file */   \
                else                                                    \
                        _CUP    = _get_cup(_UNUM); /* external file */  \
                                                                        \
                /* Set fields which are accessed by _fcontext(). */     \
                                                                        \
                INCRINIO;                                               \
                fiosp->f_cu     = _CUP;                                 \
                fiosp->f_curun  = _UNUM;                                \
                fiosp->f_intflg = _INTFLAG;                             \
                fiosp->f_iostmt = _STMTCODE;                            \
                                                                        \
                if ((_STMTCODE) & TF_FMT)                               \
                        fiosp->u.fmt.u.fe.fmtbuf        = NULL;         \
                                                                        \
                fiosp->f_rtbgn  = _rtc();       /* for statistics */    \
}

Definition at line 1202 of file fio.h.

Referenced by __OPN(), __READ(), __READC(), __WRITE(), __WRITEC(), _BACK(), _BUFFERIN(), _BUFFEROUT(), _CLS(), _EOFW(), _FRF(), _FRN(), _FRU(), _FWF(), _FWN(), _FWU(), _GETPOS_(), _INQ(), _LENGTH_(), _REWF(), _RUI(), _UNIT_(), _WUI(), fgetcf90_(), fgetcf90_8_(), flush_(), fputcf90_(), fputcf90_8_(), fseekf90_(), fseekf90_4_8_4_(), fseekf90_8_(), fstatf90_(), fstatf90_4_4_8_(), fstatf90_8_(), ftellf90_8_(), ftellf90_8_4_(), getcf90_(), getcf90_8_(), isattyf90_(), isattyf90_8_(), numblks_(), putcf90_(), putcf90_8_(), RNL(), SETPOS(), SKIPF(), ttynamf90_(), ttynamf90_8_(), and WNL().

#define STMT_END (   _CUP,
  _STATSCODE,
  _CILIST,
  _LOCFIOSP 
)
Value:
{               \
                FIOSPTR fiosp;                                          \
                                                                        \
                assert( _CILIST == NULL );                              \
                if (_LOCFIOSP != NULL)                                  \
                        fiosp   = _LOCFIOSP;                            \
                else                                                    \
                        GET_FIOS_PTR(fiosp);                            \
                if ((_CUP) != NULL) {                                   \
                        if (fiosp->f_iostmt & TF_POS)                   \
                                cup->uposition  = 0;                    \
                        FSTATS_POST(_CUP, _STATSCODE, fiosp);           \
                        _release_cup(_CUP);     /* unlock the unit */   \
                }                                                       \
                CHKSTOP                                                 \
                fiosp->f_curun  = -1;                                   \
                fiosp->f_iostmt = 0;                                    \
                fiosp->f_cu     = NULL;                                 \
}

Definition at line 1248 of file fio.h.

Referenced by __OPN(), __READ(), __READC(), __WRITE(), __WRITEC(), _BACK(), _CLS(), _EOFW(), _FRF(), _FRN(), _FRU(), _FWF(), _FWN(), _FWU(), _GETPOS_(), _INQ(), _LENGTH_(), _rb(), _REWF(), _RUF(), _UNIT_(), _wb(), _WUF(), fgetcf90_(), fgetcf90_8_(), flush_(), fputcf90_(), fputcf90_8_(), fseekf90_(), fseekf90_4_8_4_(), fseekf90_8_(), fstatf90_(), fstatf90_4_4_8_(), fstatf90_8_(), ftellf90_8_(), ftellf90_8_4_(), getcf90_(), getcf90_8_(), isattyf90_(), isattyf90_8_(), numblks_(), putcf90_(), putcf90_8_(), RNL(), SETPOS(), SKIPF(), ttynamf90_(), ttynamf90_8_(), and WNL().

#define SUBUFSZ   48

Definition at line 215 of file fio.h.

#define T_BACKSPACE   (02200 | TF_POS )

Definition at line 154 of file fio.h.

Referenced by _BACK(), and _fcontext().

#define T_BUFIN   (01700 | TF_POS )

Definition at line 150 of file fio.h.

Referenced by _BUFFERIN(), _fcontext(), and _rb().

#define T_BUFOUT   (01600 | TF_POS )

Definition at line 149 of file fio.h.

Referenced by _BUFFEROUT(), _fcontext(), and _wb().

#define T_CLOSE   (02400 )

Definition at line 156 of file fio.h.

Referenced by _CLS(), _fcontext(), and _unit_close().

#define T_ENDFILE   (02300 | TF_POS )

Definition at line 155 of file fio.h.

Referenced by _EOFW(), and _fcontext().

#define T_FLUSH   (03500 )

Definition at line 167 of file fio.h.

Referenced by flush_().

#define T_GETPOS   (03000 )

Definition at line 162 of file fio.h.

Referenced by _fcontext(), _GETPOS_(), ftellf90_8_(), and ftellf90_8_4_().

#define T_INQF   (02500 )

Definition at line 157 of file fio.h.

Referenced by _fcontext().

#define T_INQU   (02600 )
#define T_LENGTH   (03200 )

Definition at line 164 of file fio.h.

Referenced by _fcontext(), and _LENGTH_().

#define T_MISC   (02700 | TF_POS )

Definition at line 160 of file fio.h.

Referenced by SKIPF().

#define T_NUMBLKS   (03600 )

Definition at line 168 of file fio.h.

Referenced by numblks_().

#define T_OPEN   (02000 )

Definition at line 152 of file fio.h.

Referenced by __OPN(), and _fcontext().

#define T_RDF   (01200 | TF_READ | TF_POS | TF_FMT )

Definition at line 144 of file fio.h.

Referenced by _fcontext(), _get_mismatch_error(), and _set_ok_flags().

#define T_RDU   (01300 | TF_READ | TF_POS )

Definition at line 145 of file fio.h.

Referenced by _fcontext(), _FRU(), _get_mismatch_error(), and _set_ok_flags().

#define T_REWIND   (02100 | TF_POS )

Definition at line 153 of file fio.h.

Referenced by _fcontext(), and _REWF().

#define T_RLIST   (01400 | TF_READ | TF_POS )

Definition at line 146 of file fio.h.

Referenced by _fcontext().

#define T_RNL   (01500 | TF_READ | TF_POS )

Definition at line 147 of file fio.h.

Referenced by _fcontext(), _FRN(), and RNL().

#define T_RSF   (00700 | TF_READ | TF_POS | TF_FMT )

Definition at line 142 of file fio.h.

Referenced by __READC(), _fcontext(), _set_ok_flags(), fgetcf90_(), fgetcf90_8_(), getcf90_(), and getcf90_8_().

#define T_RSU   (01100 | TF_READ | TF_POS )

Definition at line 143 of file fio.h.

Referenced by __READ(), _fcontext(), and _set_ok_flags().

#define T_SETPOS   (03100 | TF_POS )

Definition at line 163 of file fio.h.

Referenced by _fcontext(), fseekf90_(), fseekf90_4_8_4_(), fseekf90_8_(), and SETPOS().

#define T_TAPE   (03400 | TF_POS )

Definition at line 166 of file fio.h.

Referenced by _fcontext().

#define T_UNIT   (03300 )

Definition at line 165 of file fio.h.

Referenced by _fcontext(), and _UNIT_().

#define T_WDF   (00300 | TF_WRITE | TF_POS | TF_FMT )

Definition at line 137 of file fio.h.

Referenced by _fcontext(), _get_mismatch_error(), and _set_ok_flags().

#define T_WDU   (00400 | TF_WRITE | TF_POS )

Definition at line 138 of file fio.h.

Referenced by _fcontext(), _FWU(), _get_mismatch_error(), and _set_ok_flags().

#define T_WLIST   (00500 | TF_WRITE | TF_POS )

Definition at line 139 of file fio.h.

Referenced by _fcontext().

#define T_WNL   (00600 | TF_WRITE | TF_POS )

Definition at line 140 of file fio.h.

Referenced by _fcontext(), _FWN(), _ld_write(), _write_delimited_char(), and WNL().

#define T_WSF   (00100 | TF_WRITE | TF_POS | TF_FMT )

Definition at line 135 of file fio.h.

Referenced by __WRITEC(), _fcontext(), _set_ok_flags(), fputcf90_(), fputcf90_8_(), putcf90_(), and putcf90_8_().

#define T_WSU   (00200 | TF_WRITE | TF_POS )

Definition at line 136 of file fio.h.

Referenced by __WRITE(), _fcontext(), and _set_ok_flags().

#define TBUFSZB   (TBUFSZW * sizeof(long))

Definition at line 227 of file fio.h.

Referenced by _frch(), _fwch(), and _unit_bksp().

#define TBUFSZW   36

Definition at line 224 of file fio.h.

#define TF_FMT   010

Definition at line 131 of file fio.h.

Referenced by _fcontext(), _FRF(), and _get_mismatch_error().

#define TF_POS   004

Definition at line 130 of file fio.h.

#define TF_READ   002
#define TF_WRITE   001
#define UHASH (   x  )     (x & (HASH_SIZE - 1))

Definition at line 1143 of file fio.h.

Referenced by _alloc_unit(), _get_cup(), _get_next_unit(), and f90_or_f77().

#define UNF   6
#define UNIT_HEADER   (offsetof(unit, auxlockp))

Definition at line 377 of file fio.h.

#define UNIT_NUM (   _U  )     ((_U)->uid)

Definition at line 1149 of file fio.h.

#define WAITIO (   cup,
  error_handle 
)

Definition at line 983 of file fio.h.

Referenced by __setpos64(), _GETPOS_(), _LENGTH_(), _rb(), _REWF(), _setpos(), _UNIT_(), _unit_bksp(), and _wb().

#define WRITE   1

Definition at line 114 of file fio.h.

Referenced by __OPN().

#define YES   1

Definition at line 111 of file fio.h.


Typedef Documentation

typedef _f_comp8 _gen_complex

Definition at line 349 of file fio.h.

typedef long bcont

Definition at line 367 of file fio.h.

typedef struct fiostate* FIOSPTR

Definition at line 719 of file fio.h.

typedef long ftnlen

Definition at line 348 of file fio.h.

typedef short s_flag

Definition at line 347 of file fio.h.

typedef struct unit_s unit
typedef { ... } unit_htable
typedef int xfer_func(FIOSPTR css, unit *cup, void *dptr, type_packet *tip, int mode)

Definition at line 833 of file fio.h.

typedef long xfer_func_c(unit *cup, void *uda, type_packet *tip, int mode, int *ubc_ret, long *wr, int *status)

Definition at line 841 of file fio.h.


Enumeration Type Documentation

Enumerator:
OS_SEQUENTIAL 
OS_DIRECT 

Definition at line 268 of file fio.h.

Enumerator:
OS_ACTION_UNSPECIFIED 
OS_READ 
OS_WRITE 
OS_READWRITE 

Definition at line 273 of file fio.h.

enum blank_spec
Enumerator:
OS_NULL 
OS_ZERO 

Definition at line 271 of file fio.h.

enum delim_spec
Enumerator:
OS_NONE 
OS_QUOTE 
OS_APOSTROPHE 

Definition at line 275 of file fio.h.

enum form_spec
Enumerator:
OS_FORMATTED 
OS_UNFORMATTED 
OS_BINARY 
OS_SYSTEM 

Definition at line 270 of file fio.h.

enum pad_spec
Enumerator:
OS_NO 
OS_YES 

Definition at line 276 of file fio.h.

Enumerator:
OS_REWIND 
OS_ASIS 
OS_APPEND 

Definition at line 272 of file fio.h.

Enumerator:
OS_UNKNOWN 
OS_OLD 
OS_NEW 
OS_SCRATCH 
OS_REPLACE 

Definition at line 263 of file fio.h.


Function Documentation

unit* _alloc_unit ( unum_t  unum,
int  private 
)
void _b_char ( char *  a,
char *  b,
ftnlen  blen 
)

Definition at line 80 of file util.c.

References MIN.

Referenced by _f_inqu(), ttynamf90_(), and ttynamf90_8_().

void _copy_n_trim ( char *  a,
ftnlen  alen,
char *  b 
)

Definition at line 56 of file util.c.

Referenced by _f_inqu(), and _f_open().

int _deduce_fstruct ( int  ,
struct fdinfo *  ,
int   
)

Definition at line 89 of file openutil.c.

References FS_AUX, FS_BIN, FS_COS, FS_F77, FS_FDC, FS_PURE, FS_TAPE, FS_TEXT, FS_U, FS_UNBLOCKED, NULL, and STD.

Referenced by _fcontext(), and _ft_stopen().

int _do_open ( unit cup,
FIOSPTR  css,
int  tufs,
char *  actnam,
int  flags,
int  aifound,
assign_info aip,
union spec_u *  fdspec,
int  catcherr 
)
int _dr_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _dw_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _f_opn ( char *  actnam,
unit cup,
FIOSPTR  css,
int  tufs,
int  aifound,
assign_info aip,
struct stat statp,
int  statp_valid,
int  catcherr,
int  o_sysflgs 
)

Definition at line 94 of file fopn.c.

References __fndc_align, _defbufsiz_warning, _do_open(), _ffconvert_stat(), _fwarn(), _gsys_qtape, _setup_cvrt(), assign_info_s::a_sdsfil_flg, AS_IRIX_F77, AS_IRIX_F90, AUTO_ACPT, AUTO_SKIP, assign_info_s::b_bufsiz, assign_info_s::b_bufsiz_flg, BLKSIZE, assign_info_s::C_chrcnv, assign_info_s::C_chrcnv_flg, assign_info_s::d_datrcv, assign_info_s::d_datrcv_flg, DUBUFSZ, errno, assign_info_s::F_filter, assign_info_s::F_filter_flg, assign_info_s::f_fortst, assign_info_s::f_fortst_flg, fd, FP::fdc, FFC_BINARY, FFC_CODED, FFC_REC, FFC_STRM, FFC_WRTRUNC, FFSTAT, fileno(), FS_BIN, FS_COS, FS_F77, FS_FDC, FS_TAPE, FS_TAPE50, FS_TEXT, FS_U, FS_UNBLOCKED, fstat, FWDEFBSZ, getenv(), _dal_s::gran, isatty, assign_info_s::m_multup, assign_info_s::m_multup_flg, make_fdspec(), MAX, assign_info_s::N_datcnv, assign_info_s::N_datcnv_flg, assign_info_s::n_preall, assign_info_s::n_preall_flg, NO, NULL, opt_flags, OS_ACTION_UNSPECIFIED, OS_READ, OS_READWRITE, OS_WRITE, POWER_OF_TWO, ret, assign_info_s::S_comsep, assign_info_s::S_comsep_flg, assign_info_s::s_fstrct_flg, stat, STD, FP::std, ffsw::sw_count, ffsw::sw_error, assign_info_s::t_tmpfil_flg, assign_info_s::T_utrunc, assign_info_s::T_utrunc_flg, assign_info_s::u_bufcnt, assign_info_s::u_bufcnt_flg, assign_info_s::U_unicoslist, assign_info_s::U_unicoslist_flg, unit_s::uaction, unit_s::ualign, unit_s::ualignmask, unit_s::uasync, unit_s::ublkd, unit_s::ubmx, unit_s::ucharset, unit_s::udamax, unit_s::ufcompat, unit_s::ufcomplen, unit_s::ufcomsep, unit_s::uffsw, unit_s::uflagword, unit_s::ufmt, unit_s::ufnegzero, unit_s::ufnl_skip, unit_s::ufp, unit_s::ufrptcnt, unit_s::ufs, unit_s::uft90, unit_s::ufunilist, unit_s::umultfil, unit_s::umultup, unit_s::unumcvrt, unit_s::urecl, unit_s::uscrtch, unit_s::useek, unit_s::useq, unit_s::usysfd, unit_s::usysread, unit_s::usyswrite, unit_s::utmpfil, unit_s::utrunc, assign_info_s::W_compwidth, assign_info_s::W_compwidth_flg, assign_info_s::Y_nl_skip, assign_info_s::Y_nl_skip_flg, assign_info_s::y_reptcnt, assign_info_s::y_reptcnt_flg, YES, assign_info_s::Z_neg_zero, and assign_info_s::Z_neg_zero_flg.

Referenced by _f_open().

Here is the call graph for this function:

void _fcleanup ( void   ) 

Definition at line 62 of file fcleanup.c.

References _get_next_unit(), _is_file_name(), _lmessage(), _print_statistics, _unit_close(), CLST_UNSPEC, EOF, FS_AUX, NULL, OPEN_UPTR, pass, ret, unit_s::ufs, and unit_s::uid.

Referenced by _ferr(), and _initialize_e_fortran_io().

Here is the call graph for this function:

void _fcontext ( FIOSPTR  fiosp  ) 
void _ferr ( FIOSPTR  fiosp,
int  _Errno,
  ... 
)
void _flsh_mem ( void   ) 

Definition at line 53 of file flsh_mem.c.

long _frch ( unit _Cup,
long *  _Uda,
long  _Chars,
int  _Mode,
long *  _Status 
)
long _fwch ( unit _Cup,
long *  _Uda,
long  _Chars,
int  _Mode 
)
void _gather_data ( void *  lbuf,
long  items,
long  inc,
int  len,
void *  ptr 
)

Definition at line 112 of file scatgath.c.

References LARGE, MEDIUM, PTR_ALIGNED, SIZE_ALIGNED, and SMALL.

Referenced by _iochunk().

static unit* _get_cup ( unum_t  unum  )  [static]
static unit* _get_int_cup ( void   )  [static]

Definition at line 1507 of file fio.h.

References cup.

int _get_mismatch_error ( int  noabort,
int  iost,
unit cup,
FIOSPTR  css 
)

Definition at line 845 of file open.c.

References _ferr(), FEINTUNK, FS_AUX, OS_READ, OS_WRITE, ret, T_RDF, T_RDU, T_WDF, T_WDU, TF_FMT, TF_WRITE, unit_s::uaction, unit_s::ufmt, unit_s::ufs, and unit_s::useq.

Referenced by __READ(), __READC(), __WRITE(), __WRITEC(), _FRF(), _FRU(), _FWF(), _FWU(), and _set_ok_flags().

Here is the call graph for this function:

unit* _get_next_unit ( unit p,
int  iflock,
int  iftask 
)
unit* _imp_open ( struct fiostate css,
int  acc,
int  form,
unum_t  unum,
int  errf,
int *  errn 
)
unit* _imp_open77 ( struct fiostate css,
int  acc,
int  form,
unum_t  unum,
int  errf,
int *  errn 
)
unit* _implicit_open ( int  acc,
int  form,
unum_t  unum,
int  errf,
int *  errn 
)

Definition at line 144 of file impopen.c.

References _ll_implicit_open(), and GET_FIOS_PTR.

Here is the call graph for this function:

unit* _init_internal_unit ( void   ) 
void _init_unit ( unit cup  ) 

Definition at line 69 of file initunit.c.

References unit_s::ufs, unit_s::unitchk, unit_s::usysfd, and unit_s::utrunc.

Referenced by _alloc_unit(), and _init_internal_unit().

void _initialize_fortran_io ( void   ) 

Definition at line 146 of file finit.c.

References _f_rcsz, _fortran_io_is_init, _lwrite_setup(), _wf_setup(), LOADED, and LOADED_DATA.

Referenced by _initialize_e_fortran_io(), and _initialize_i_fortran_io().

Here is the call graph for this function:

int _iochunk ( FIOSPTR  css,
unit cup,
xfer_func func,
struct DvDimen *  dimen,
type_packet tip,
short  nd,
long  extent,
int  bshft,
bcont addr 
)

Definition at line 63 of file iochunk.c.

References _gather_data(), _scatter_data(), CHBUFSIZE, type_information_packet::count, type_information_packet::elsize, PARTIAL, type_information_packet::stride, and unit_s::uwrt.

Referenced by _stride_dv().

Here is the call graph for this function:

int _ir_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _iw_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _lw_after_nonadv ( FIOSPTR  _Css,
unit _Cup,
int  _Linelimit,
int  _Namelistflag 
)

Definition at line 1076 of file wf.c.

References _newrec_listio_after_nonadvancing, _sw_endrec(), BLANK, NULL, unit_s::ulinebuf, unit_s::ulinemax, unit_s::ulineptr, and unit_s::urecsize.

Referenced by _FWF(), and _FWN().

Here is the call graph for this function:

int _nonadv_endrec ( FIOSPTR  _Css,
unit _Cup 
)

Definition at line 1045 of file wf.c.

References _fwch(), errno, FULL, NULL, unit_s::pnonadv, RERROR, unit_s::uflshptr, unit_s::ulinebuf, and unit_s::ulinemax.

Referenced by _BACK(), _EOFW(), _REWF(), and _unit_close().

Here is the call graph for this function:

int _parse ( FIOSPTR  _Css,
unit _Cup,
fmt_type **  _Prsfmt 
)
static void _release_cup ( unit cup  )  [static]
void _scatter_data ( void *  ptr,
long  items,
long  inc,
int  len,
void *  lbuf 
)

Definition at line 289 of file scatgath.c.

References LARGE, MEDIUM, PTR_ALIGNED, SIZE_ALIGNED, and SMALL.

Referenced by _iochunk().

unit* _search_unit_list ( unit p,
unum_t  unum 
)

Definition at line 162 of file fortunit.c.

References unit_s::hashlink, MYTASK, NULL, unit_s::private, unit_s::uid, and unit_s::utid.

Referenced by _get_cup(), and f90_or_f77().

void _set_device_and_inode ( int  sysfd,
dev_t *  devicep,
ino_t *  inodep 
)

Definition at line 188 of file openutil.c.

References fstat, and stat.

Referenced by _f_open(), and _setuptr().

void _set_ok_flags ( unit cup  ) 
int _setpos ( FIOSPTR  css,
unit cup,
int *  pa,
int  len 
)
void _setup_cvrt ( unit cup  ) 

Definition at line 156 of file openutil.c.

References CS_NATIVE, NCV_CDC, NCV_IBM, unit_s::ucharset, and unit_s::unumcvrt.

Referenced by _f_opn().

int _sr_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _sw_endrec ( FIOSPTR  _Css,
unit _Cup,
int  _Count 
)
int _uniqinod ( unit cup,
assign_info aip 
)

Definition at line 224 of file openutil.c.

References _get_next_unit(), FEMDUPOP, FEOPFNCN, fstat, assign_info_s::m_multup, assign_info_s::m_multup_flg, NULL, RSVD_UNUM, stat, unit_s::udevice, unit_s::uid, unit_s::uinode, unit_s::umultup, and unit_s::usysfd.

Referenced by _f_open(), and _setuptr().

Here is the call graph for this function:

int _unit_bksp ( unit cup  ) 
int _unit_close ( unit cup,
int  cstat,
FIOSPTR  css 
)
int _unit_scratch ( unit cup  ) 
int _unit_seek ( unit cup,
recn_t  recn,
int  iost 
)
int _unit_trunc ( unit cup  ) 

Definition at line 69 of file unittrunc.c.

References errno, FP::fdc, FEINTFST, fileno(), FS_FDC, FS_TEXT, L, LIBFSEEK, LIBFTELL, LIBFTRUNC, FP::std, STD, ffsw::sw_error, trunc(), unit_s::uffsw, unit_s::ufp, unit_s::ufs, unit_s::useek, and unit_s::useq.

Referenced by __setpos64(), _f_open(), _REWF(), _setpos(), _unit_bksp(), and _unit_close().

Here is the call graph for this function:


Variable Documentation

Definition at line 204 of file tables.c.

Referenced by _FRF(), _FWF(), _FWN(), _FWU(), _nlstrent(), _wnl90to77(), and _WUF().

const short _charset_cnvt[CS_MAX]

Definition at line 157 of file tables.c.

Referenced by _get_dc_param().

Definition at line 128 of file finit.c.

Referenced by _alloc_unit(), and _initialize_e_fortran_io().

Definition at line 58 of file tables.c.

Referenced by l_write().

const short _f77_type_len[DT_MAX]

Definition at line 96 of file tables.c.

Referenced by _get_dc_param(), and n_getv().

const char* _f77_type_name[DT_MAX]

Definition at line 138 of file tables.c.

Referenced by RNL().

const short _f90_to_f77_type_cnvt[DVTYPE_NTYPES]

Definition at line 77 of file tables.c.

Referenced by _get_dc_param().

const char* _f90_type_name[DVTYPE_NTYPES]

Definition at line 119 of file tables.c.

Referenced by _gdc_abort().

int _f_ldsz

Definition at line 66 of file globals.c.

Referenced by _f_open().

int _f_rcsz

Definition at line 65 of file globals.c.

Referenced by _f_open(), and _initialize_fortran_io().

const short _ffstat_cnvt[7]

Definition at line 166 of file tables.c.

Definition at line 70 of file globals.c.

Referenced by _init_internal_unit().

Definition at line 68 of file globals.c.

Referenced by _alloc_unit(), _get_next_unit(), and f90_or_f77().

xfer_func_c _frwd

Referenced by __READ(), _frwd(), and _rb().

xfer_func_c _fwwd

Referenced by __WRITE(), _FWU(), _fwwd(), _wb(), and _WUF().

Definition at line 129 of file finit.c.

Referenced by _init_internal_unit(), and _initialize_i_fortran_io().

Definition at line 60 of file globals.c.

Referenced by _do_open().

xfer_func _ld_read
xfer_func _ld_write

Definition at line 184 of file tables.c.

Referenced by n_getv(), RNL(), and WNL().

Definition at line 55 of file globals.c.

Referenced by _clruptr(), and _setuptr().

Definition at line 61 of file globals.c.

xfer_func _rdfmt

Referenced by _FRF(), _rdfmt(), and _xfer_iolist().

xfer_func _rdunf

Referenced by _FRU(), _rdunf(), and _xfer_iolist().

Definition at line 64 of file globals.c.

Referenced by _f_open().

Definition at line 62 of file globals.c.

Referenced by _f_open().

Definition at line 63 of file globals.c.

Referenced by _f_open().

Definition at line 93 of file globals.c.

xfer_func _wrfmt

Referenced by _FWF(), _wrfmt(), and _xfer_iolist().

xfer_func _wrunf

Referenced by _FWU(), _wrunf(), and _xfer_iolist().

Definition at line 618 of file fio.h.