aboutsummaryrefslogtreecommitdiff
path: root/libf2c
diff options
context:
space:
mode:
Diffstat (limited to 'libf2c')
-rw-r--r--libf2c/ChangeLog7
-rw-r--r--libf2c/f2cext.c6
-rw-r--r--libf2c/libF77/signal_.c9
3 files changed, 16 insertions, 6 deletions
diff --git a/libf2c/ChangeLog b/libf2c/ChangeLog
index c6c0dd3..1adcc0d 100644
--- a/libf2c/ChangeLog
+++ b/libf2c/ChangeLog
@@ -1,3 +1,10 @@
+Tue Dec 23 22:56:01 1997 Craig Burley <burley@gnu.org>
+
+ * libF77/signal_.c (G77_signal_0): Return type is
+ now `void *', to cope with returning previous signal
+ handler on 64-bit systems like Alphas.
+ * f2cext.c (signal_): Changed accordingly.
+
Tue Sep 30 00:41:39 1997 Craig Burley <burley@gnu.ai.mit.edu>
Do a better job of printing the offending FORMAT string
diff --git a/libf2c/f2cext.c b/libf2c/f2cext.c
index d5ac815..fa1eff7 100644
--- a/libf2c/f2cext.c
+++ b/libf2c/f2cext.c
@@ -18,7 +18,7 @@ Boston, MA 02111-1307, USA. */
#include <f2c.h>
-typedef int (*sig_proc)(int);
+typedef void *sig_proc; /* For now, this will have to do. */
#ifdef Labort
int abort_ (void) {
@@ -98,8 +98,8 @@ ftnint iargc_ (void) {
#endif
#ifdef Lsignal
-ftnint signal_ (integer *sigp, sig_proc proc) {
- extern ftnint G77_signal_0 (integer *sigp, sig_proc proc);
+void *signal_ (integer *sigp, sig_proc proc) {
+ extern void *G77_signal_0 (integer *sigp, sig_proc proc);
return G77_signal_0 (sigp, proc);
}
#endif
diff --git a/libf2c/libF77/signal_.c b/libf2c/libF77/signal_.c
index 1ac8139..efd969b 100644
--- a/libf2c/libF77/signal_.c
+++ b/libf2c/libF77/signal_.c
@@ -2,13 +2,16 @@
#include "signal1.h"
#ifdef KR_headers
-ftnint G77_signal_0 (sigp, proc) integer *sigp; sig_pf proc;
+void *
+G77_signal_0 (sigp, proc) integer *sigp; sig_pf proc;
#else
-ftnint G77_signal_0 (integer *sigp, sig_pf proc)
+void *
+G77_signal_0 (integer *sigp, sig_pf proc)
#endif
{
int sig;
sig = (int)*sigp;
- return (ftnint)signal(sig, proc);
+ return (void *) signal(sig, proc);
}
+