1 /* STARTUP PROCEDURE FOR UNIX FORTRAN PROGRAMS */
16 extern void f_exit(void);
19 extern int atexit(void (*)(void));
29 extern void sig_die();
31 static void sigfdie(n)
33 sig_die("Floating Exception", 1);
37 static void sigidie(n)
39 sig_die("IOT Trap", 1);
43 static void sigqdie(n)
45 sig_die("Quit signal", 1);
50 static void sigindie(n)
52 sig_die("Interrupt", 0);
57 static void sigtdie(n)
72 signal(SIGFPE, sigfdie); /* ignore underflow, enable overflow */
73 signal(SIGIOT, sigidie);
75 if(signal(SIGQUIT,sigqdie) == SIG_IGN)
76 signal(SIGQUIT, SIG_IGN);
78 if(signal(SIGINT, sigindie) == SIG_IGN)
79 signal(SIGINT, SIG_IGN);
80 signal(SIGTERM,sigtdie);
83 ldfps(01200); /* detect overflow as an exception */
94 exit(0); /* exit(0) rather than return(0) to bypass Cray bug */