SCCS-vsn: usr.bin/f77/libF77/trapov_.c 5.5
SCCS-vsn: usr.bin/f77/libF77/trpfpe_.c 5.6
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
- * @(#)trapov_.c 5.4 %G%
+ * @(#)trapov_.c 5.5 %G%
*
* Fortran/C floating-point overflow handler
*
*
* Fortran/C floating-point overflow handler
*
got_overflow(signo, codeword, myaddr, pc, ps)
char *myaddr, *pc;
{
got_overflow(signo, codeword, myaddr, pc, ps)
char *myaddr, *pc;
{
got_illegal_instruction(signo, codeword, myaddr, trap_pc, ps)
char *myaddr, *trap_pc;
{
got_illegal_instruction(signo, codeword, myaddr, trap_pc, ps)
char *myaddr, *trap_pc;
{
opcode = fetch_byte() & 0xff;
no_reserved = 0;
if (codeword != RES_OPR_F || !is_floating_operation(opcode)) {
opcode = fetch_byte() & 0xff;
no_reserved = 0;
if (codeword != RES_OPR_F || !is_floating_operation(opcode)) {
- if (sigill_default > (SIG_VAL)7)
- return((*sigill_default)(signo, codeword, myaddr, trap_pc, ps));
- else
+ if (sigill_default > (SIG_VAL)7) {
+ (*sigill_default)(signo, codeword, myaddr, trap_pc, ps);
+ return;
+ } else
sigdie(signo, codeword, myaddr, trap_pc, ps);
/* NOTREACHED */
}
sigdie(signo, codeword, myaddr, trap_pc, ps);
/* NOTREACHED */
}
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
- * @(#)trpfpe_.c 5.5 %G%
+ * @(#)trpfpe_.c 5.6 %G%
*
*
* Fortran floating-point error handler
*
*
* Fortran floating-point error handler
static int max_messages = 1; /* the user can tell us */
static int fpe_count = 0; /* how bad is it ? */
long fpeflt_ = 0; /* fortran "common /fpeflt/ flag" */
static int max_messages = 1; /* the user can tell us */
static int fpe_count = 0; /* how bad is it ? */
long fpeflt_ = 0; /* fortran "common /fpeflt/ flag" */
-static int (*sigfpe_dfl)() = SIG_DFL; /* if we can't fix it ... */
+static sig_t sigfpe_dfl = SIG_DFL; /* if we can't fix it ... */
/*
* The fortran unit control table
/*
* The fortran unit control table