aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Love <d.love@dl.ac.uk>1998-09-06 06:15:14 +0000
committerDave Love <fx@gcc.gnu.org>1998-09-06 06:15:14 +0000
commitb76d335291f7807b8f6aab62b8cca601b318af1b (patch)
tree44b5e6d14ea52f3151412f2ce490e08f652e1082
parent114791ea106f70baadc38ba90e2de769da211333 (diff)
downloadgcc-b76d335291f7807b8f6aab62b8cca601b318af1b.zip
gcc-b76d335291f7807b8f6aab62b8cca601b318af1b.tar.gz
gcc-b76d335291f7807b8f6aab62b8cca601b318af1b.tar.bz2
1998-09-06 Dave Love <d.love@dl.ac.uk>
From Toon to fix spurious recursive i/o errors: * libI77/sfe.c (e_wdfe): Set f__init. * libI77/dfe.c (c_dfe): Check and set f__init. (s_rdfe, s_wdfe): Don't check and set f__init. From-SVN: r22294
-rw-r--r--libf2c/ChangeLog8
-rw-r--r--libf2c/libI77/dfe.c6
-rw-r--r--libf2c/libI77/sfe.c1
3 files changed, 11 insertions, 4 deletions
diff --git a/libf2c/ChangeLog b/libf2c/ChangeLog
index d31f9a6..f95142c 100644
--- a/libf2c/ChangeLog
+++ b/libf2c/ChangeLog
@@ -1,3 +1,11 @@
+1998-09-06 Dave Love <d.love@dl.ac.uk>
+
+ From Toon to fix spurious recursive i/o errors:
+ * libI77/sfe.c (e_wdfe): Set f__init.
+
+ * libI77/dfe.c (c_dfe): Check and set f__init.
+ (s_rdfe, s_wdfe): Don't check and set f__init.
+
Fri Sep 4 18:40:32 1998 Craig Burley <burley@gnu.org>
* libU77/sys_clock_.c (G77_system_clock_0): Fix indentation.
diff --git a/libf2c/libI77/dfe.c b/libf2c/libI77/dfe.c
index f8c1fc1..dfc23dc 100644
--- a/libf2c/libI77/dfe.c
+++ b/libf2c/libI77/dfe.c
@@ -66,6 +66,8 @@ c_dfe(a) cilist *a;
c_dfe(cilist *a)
#endif
{
+ if(f__init != 1) f_init();
+ f__init = 3;
f__sequential=0;
f__formatted=f__external=1;
f__elist=a;
@@ -92,8 +94,6 @@ integer s_rdfe(cilist *a)
#endif
{
int n;
- if(f__init != 1) f_init();
- f__init = 3;
f__reading=1;
if(n=c_dfe(a))return(n);
if(f__curunit->uwrt && f__nowreading(f__curunit))
@@ -115,8 +115,6 @@ integer s_wdfe(cilist *a)
#endif
{
int n;
- if(f__init != 1) f_init();
- f__init = 3;
f__reading=0;
if(n=c_dfe(a)) return(n);
if(f__curunit->uwrt != 1 && f__nowwriting(f__curunit))
diff --git a/libf2c/libI77/sfe.c b/libf2c/libI77/sfe.c
index c7d8918..eb6260f 100644
--- a/libf2c/libI77/sfe.c
+++ b/libf2c/libI77/sfe.c
@@ -35,5 +35,6 @@ integer e_wsfe(Void)
integer e_wdfe(Void)
{
+ f__init = 1;
return en_fio();
}