1998-02-01 02:37:08 +01:00
|
|
|
#include "f2c.h"
|
|
|
|
#include "fio.h"
|
|
|
|
#include "fmt.h"
|
|
|
|
extern char *f__icptr;
|
|
|
|
char *f__icend;
|
|
|
|
extern icilist *f__svic;
|
|
|
|
int f__icnum;
|
|
|
|
extern int f__hiwater;
|
main.c (main): Avoid implicit int.
* libF77/main.c (main): Avoid implicit int.
* libI77/dfe.c (y_rsk, y_getc, c_dfe): Likewise.
* libI77/due.c (c_due): Likewise.
* libI77/err.c (f__canseek, f__nowreading, f__nowwriting):
Likewise.
* libI77/fmt.c (op_gen, ne_d, e_d, pars_f, type_f, en_fio):
Likewise.
* libI77/iio.c (z_getc, z_rnew, c_si, z_wnew): Likewise.
* libI77/lread.c (t_getc, c_le, l_read): Likewise.
* libI77/lwrite.c (l_write): Likewise.
* libI77/open.c (fk_open): Likewise.
* libI77/rdfmt.c (rd_ed, rd_ned): Likewise.
* libI77/rsfe.c (xrd_SL, x_getc, x_endp, x_rev): Likewise.
* libI77/rsne.c (t_getc, x_rsne): Likewise.
* libI77/sfe.c (c_sfe): Likewise.
* libI77/sue.c (c_sue): Likewise.
* libI77/uio.c (do_us): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wrtfmt.c (wrt_L, w_ed, w_ned): Likewise.
From-SVN: r54169
2002-06-02 15:01:12 +02:00
|
|
|
int
|
2002-06-01 14:38:32 +02:00
|
|
|
z_getc (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
if (f__recpos++ < f__svic->icirlen)
|
|
|
|
{
|
|
|
|
if (f__icptr >= f__icend)
|
|
|
|
err (f__svic->iciend, (EOF), "endfile");
|
|
|
|
return (*(unsigned char *) f__icptr++);
|
|
|
|
}
|
|
|
|
return '\n';
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
1998-05-19 12:52:03 +02:00
|
|
|
|
2002-06-01 14:38:32 +02:00
|
|
|
void
|
|
|
|
z_putc (int c)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
if (f__icptr < f__icend && f__recpos++ < f__svic->icirlen)
|
|
|
|
*f__icptr++ = c;
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
main.c (main): Avoid implicit int.
* libF77/main.c (main): Avoid implicit int.
* libI77/dfe.c (y_rsk, y_getc, c_dfe): Likewise.
* libI77/due.c (c_due): Likewise.
* libI77/err.c (f__canseek, f__nowreading, f__nowwriting):
Likewise.
* libI77/fmt.c (op_gen, ne_d, e_d, pars_f, type_f, en_fio):
Likewise.
* libI77/iio.c (z_getc, z_rnew, c_si, z_wnew): Likewise.
* libI77/lread.c (t_getc, c_le, l_read): Likewise.
* libI77/lwrite.c (l_write): Likewise.
* libI77/open.c (fk_open): Likewise.
* libI77/rdfmt.c (rd_ed, rd_ned): Likewise.
* libI77/rsfe.c (xrd_SL, x_getc, x_endp, x_rev): Likewise.
* libI77/rsne.c (t_getc, x_rsne): Likewise.
* libI77/sfe.c (c_sfe): Likewise.
* libI77/sue.c (c_sue): Likewise.
* libI77/uio.c (do_us): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wrtfmt.c (wrt_L, w_ed, w_ned): Likewise.
From-SVN: r54169
2002-06-02 15:01:12 +02:00
|
|
|
int
|
2002-06-01 14:38:32 +02:00
|
|
|
z_rnew (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
f__icptr = f__svic->iciunit + (++f__icnum) * f__svic->icirlen;
|
|
|
|
f__recpos = 0;
|
|
|
|
f__cursor = 0;
|
|
|
|
f__hiwater = 0;
|
|
|
|
return 1;
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
|
|
|
|
2002-06-01 14:38:32 +02:00
|
|
|
static int
|
|
|
|
z_endp (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
(*f__donewrec) ();
|
|
|
|
return 0;
|
|
|
|
}
|
1998-02-01 02:37:08 +01:00
|
|
|
|
main.c (main): Avoid implicit int.
* libF77/main.c (main): Avoid implicit int.
* libI77/dfe.c (y_rsk, y_getc, c_dfe): Likewise.
* libI77/due.c (c_due): Likewise.
* libI77/err.c (f__canseek, f__nowreading, f__nowwriting):
Likewise.
* libI77/fmt.c (op_gen, ne_d, e_d, pars_f, type_f, en_fio):
Likewise.
* libI77/iio.c (z_getc, z_rnew, c_si, z_wnew): Likewise.
* libI77/lread.c (t_getc, c_le, l_read): Likewise.
* libI77/lwrite.c (l_write): Likewise.
* libI77/open.c (fk_open): Likewise.
* libI77/rdfmt.c (rd_ed, rd_ned): Likewise.
* libI77/rsfe.c (xrd_SL, x_getc, x_endp, x_rev): Likewise.
* libI77/rsne.c (t_getc, x_rsne): Likewise.
* libI77/sfe.c (c_sfe): Likewise.
* libI77/sue.c (c_sue): Likewise.
* libI77/uio.c (do_us): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wrtfmt.c (wrt_L, w_ed, w_ned): Likewise.
From-SVN: r54169
2002-06-02 15:01:12 +02:00
|
|
|
int
|
2002-06-01 14:38:32 +02:00
|
|
|
c_si (icilist * a)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
if (f__init & 2)
|
|
|
|
f__fatal (131, "I/O recursion");
|
|
|
|
f__init |= 2;
|
|
|
|
f__elist = (cilist *) a;
|
|
|
|
f__fmtbuf = a->icifmt;
|
|
|
|
f__curunit = 0;
|
|
|
|
f__sequential = f__formatted = 1;
|
|
|
|
f__external = 0;
|
|
|
|
if (pars_f (f__fmtbuf) < 0)
|
|
|
|
err (a->icierr, 100, "startint");
|
|
|
|
fmt_bg ();
|
|
|
|
f__cblank = f__cplus = f__scale = 0;
|
|
|
|
f__svic = a;
|
|
|
|
f__icnum = f__recpos = 0;
|
|
|
|
f__cursor = 0;
|
|
|
|
f__hiwater = 0;
|
|
|
|
f__icptr = a->iciunit;
|
|
|
|
f__icend = f__icptr + a->icirlen * a->icirnum;
|
|
|
|
f__cf = 0;
|
|
|
|
return (0);
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
|
|
|
|
2002-06-01 14:38:32 +02:00
|
|
|
int
|
|
|
|
iw_rev (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
if (f__workdone)
|
|
|
|
z_endp ();
|
|
|
|
f__hiwater = f__recpos = f__cursor = 0;
|
|
|
|
return (f__workdone = 0);
|
|
|
|
}
|
1998-02-01 02:37:08 +01:00
|
|
|
|
2002-06-01 14:38:32 +02:00
|
|
|
integer
|
|
|
|
s_rsfi (icilist * a)
|
|
|
|
{
|
|
|
|
int n;
|
dfe.c (s_rdfe, s_wdfe): Wrap parentheses around assignment used as truth value.
* libI77/dfe.c (s_rdfe, s_wdfe): Wrap parentheses around
assignment used as truth value.
* libI77/due.c (s_rdue, s_wdue): Likewise.
* libI77/endfile.c (f_end): Likewise.
* libI77/iio.c (s_rsfi, s_wsfi): Likewise.
* libI77/lread.c (ERR, l_C, nmL_getc, s_rsle): Likewise.
* libI77/lwrite.c (l_g, l_put): Likewise.
* libI77/open.c (f_open): Likewise.
* libI77/rdfmt.c (rd_Z): Likewise.
* libI77/rsfe.c (s_rsfe): Likewise.
* libI77/rsne.c (hash, mk_hashtab, nl_init, getname, getdimen,
x_rsne, s_rsne): Likewise.
* libI77/sue.c (s_rsue, s_wsue): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wsfe.c (s_wsfe): Likewise.
* libI77/wsle.c (s_wsle): Likewise.
* libI77/wsne.c (s_wsne): Likewise.
From-SVN: r54172
2002-06-02 16:34:31 +02:00
|
|
|
if ((n = c_si (a)))
|
2002-06-01 14:38:32 +02:00
|
|
|
return (n);
|
|
|
|
f__reading = 1;
|
|
|
|
f__doed = rd_ed;
|
|
|
|
f__doned = rd_ned;
|
|
|
|
f__getn = z_getc;
|
|
|
|
f__dorevert = z_endp;
|
|
|
|
f__donewrec = z_rnew;
|
|
|
|
f__doend = z_endp;
|
|
|
|
return (0);
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
|
|
|
|
main.c (main): Avoid implicit int.
* libF77/main.c (main): Avoid implicit int.
* libI77/dfe.c (y_rsk, y_getc, c_dfe): Likewise.
* libI77/due.c (c_due): Likewise.
* libI77/err.c (f__canseek, f__nowreading, f__nowwriting):
Likewise.
* libI77/fmt.c (op_gen, ne_d, e_d, pars_f, type_f, en_fio):
Likewise.
* libI77/iio.c (z_getc, z_rnew, c_si, z_wnew): Likewise.
* libI77/lread.c (t_getc, c_le, l_read): Likewise.
* libI77/lwrite.c (l_write): Likewise.
* libI77/open.c (fk_open): Likewise.
* libI77/rdfmt.c (rd_ed, rd_ned): Likewise.
* libI77/rsfe.c (xrd_SL, x_getc, x_endp, x_rev): Likewise.
* libI77/rsne.c (t_getc, x_rsne): Likewise.
* libI77/sfe.c (c_sfe): Likewise.
* libI77/sue.c (c_sue): Likewise.
* libI77/uio.c (do_us): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wrtfmt.c (wrt_L, w_ed, w_ned): Likewise.
From-SVN: r54169
2002-06-02 15:01:12 +02:00
|
|
|
int
|
2002-06-01 14:38:32 +02:00
|
|
|
z_wnew (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
if (f__recpos < f__hiwater)
|
|
|
|
{
|
|
|
|
f__icptr += f__hiwater - f__recpos;
|
|
|
|
f__recpos = f__hiwater;
|
|
|
|
}
|
|
|
|
while (f__recpos++ < f__svic->icirlen)
|
|
|
|
*f__icptr++ = ' ';
|
|
|
|
f__recpos = 0;
|
|
|
|
f__cursor = 0;
|
|
|
|
f__hiwater = 0;
|
|
|
|
f__icnum++;
|
|
|
|
return 1;
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
2002-06-01 14:38:32 +02:00
|
|
|
|
|
|
|
integer
|
|
|
|
s_wsfi (icilist * a)
|
|
|
|
{
|
|
|
|
int n;
|
dfe.c (s_rdfe, s_wdfe): Wrap parentheses around assignment used as truth value.
* libI77/dfe.c (s_rdfe, s_wdfe): Wrap parentheses around
assignment used as truth value.
* libI77/due.c (s_rdue, s_wdue): Likewise.
* libI77/endfile.c (f_end): Likewise.
* libI77/iio.c (s_rsfi, s_wsfi): Likewise.
* libI77/lread.c (ERR, l_C, nmL_getc, s_rsle): Likewise.
* libI77/lwrite.c (l_g, l_put): Likewise.
* libI77/open.c (f_open): Likewise.
* libI77/rdfmt.c (rd_Z): Likewise.
* libI77/rsfe.c (s_rsfe): Likewise.
* libI77/rsne.c (hash, mk_hashtab, nl_init, getname, getdimen,
x_rsne, s_rsne): Likewise.
* libI77/sue.c (s_rsue, s_wsue): Likewise.
* libI77/wref.c (wrt_E, wrt_F): Likewise.
* libI77/wsfe.c (s_wsfe): Likewise.
* libI77/wsle.c (s_wsle): Likewise.
* libI77/wsne.c (s_wsne): Likewise.
From-SVN: r54172
2002-06-02 16:34:31 +02:00
|
|
|
if ((n = c_si (a)))
|
2002-06-01 14:38:32 +02:00
|
|
|
return (n);
|
|
|
|
f__reading = 0;
|
|
|
|
f__doed = w_ed;
|
|
|
|
f__doned = w_ned;
|
|
|
|
f__putn = z_putc;
|
|
|
|
f__dorevert = iw_rev;
|
|
|
|
f__donewrec = z_wnew;
|
|
|
|
f__doend = z_endp;
|
|
|
|
return (0);
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
2002-06-01 14:38:32 +02:00
|
|
|
|
|
|
|
integer
|
|
|
|
e_rsfi (void)
|
|
|
|
{
|
|
|
|
int n;
|
|
|
|
f__init &= ~2;
|
|
|
|
n = en_fio ();
|
|
|
|
f__fmtbuf = NULL;
|
|
|
|
return (n);
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|
2002-06-01 14:38:32 +02:00
|
|
|
|
|
|
|
integer
|
|
|
|
e_wsfi (void)
|
1998-02-01 02:37:08 +01:00
|
|
|
{
|
2002-06-01 14:38:32 +02:00
|
|
|
int n;
|
|
|
|
f__init &= ~2;
|
|
|
|
n = en_fio ();
|
|
|
|
f__fmtbuf = NULL;
|
|
|
|
if (f__svic->icirnum != 1
|
|
|
|
&& (f__icnum > f__svic->icirnum
|
|
|
|
|| (f__icnum == f__svic->icirnum && (f__recpos | f__hiwater))))
|
|
|
|
err (f__svic->icierr, 110, "inwrite");
|
|
|
|
if (f__recpos < f__hiwater)
|
|
|
|
f__recpos = f__hiwater;
|
|
|
|
if (f__recpos >= f__svic->icirlen)
|
|
|
|
err (f__svic->icierr, 110, "recend");
|
|
|
|
if (!f__recpos && f__icnum)
|
|
|
|
return n;
|
|
|
|
while (f__recpos++ < f__svic->icirlen)
|
|
|
|
*f__icptr++ = ' ';
|
|
|
|
return n;
|
1998-02-01 02:37:08 +01:00
|
|
|
}
|