char id_inquire[] = "@(#)inquire.c 1.2";
* inquire.c - f77 i/o inquire statement routine
g_char(a
->infile
,a
->infilen
,buf
);
if((x_inode
=inode(buf
))==-1)
{ if(a
->inex
) *a
->inex
= NO
; /* doesn't exist */
if(units
[i
].ufd
&& (units
[i
].uinode
==x_inode
))
if (not_legal(lunit
)) err(a
->inerr
,F_ERUNIT
,"inquire")
if(a
->inex
) *a
->inex
= ((byfile
&& x_inode
) || (!byfile
&& p
));
if(a
->inopen
) *a
->inopen
=(p
!=NULL
);
if(a
->innum
) *a
->innum
= (p
?(p
-units
):-1);
if(a
->innamed
) *a
->innamed
= (byfile
|| (p
&& p
->ufnm
));
else if(p
&& p
->ufnm
) s
= p
->ufnm
;
b_char(s
,a
->inname
,a
->innamlen
);
b_char(s
,a
->inacc
,a
->inacclen
);
s
= ((byfile
&& !p
) || (p
&& !p
->url
))? "yes" : "no";
b_char(s
,a
->inseq
,a
->inseqlen
);
s
= ((byfile
&& !p
) || (p
&& p
->useek
&& p
->url
))? "yes" : "no";
b_char(s
,a
->indir
,a
->indirlen
);
if(p
->uprnt
) s
= "print"; /*** NOT STANDARD FORTRAN ***/
s
= p
->ufmt
?"formatted":"unformatted";
b_char(s
,a
->inform
,a
->informlen
);
if (p
) s
= p
->ufmt
? "yes" : "no";
b_char(s
,a
->infmt
,a
->infmtlen
);
if (p
) s
= p
->ufmt
? "no" : "yes";
b_char(s
,a
->inunf
,a
->inunflen
);
if(a
->inrecl
&& p
) *a
->inrecl
=p
->url
;
if(a
->innrec
&& p
&& p
->url
)
*a
->innrec
=(ftell(p
->ufd
)/p
->url
)+1;
if(a
->inblank
&& p
&& p
->ufmt
)
b_char(p
->ublnk
? "zero" : "blank",a
->inblank
,a
->inblanklen
);