SIGNAL failure FTN->C

falk at uiucuxc.CSO.UIUC.EDU falk at uiucuxc.CSO.UIUC.EDU
Fri Aug 29 02:06:00 AEST 1986


{}
problem synopsis: signal handling in a c-function fails with an AST-fault
                  when the c-function was invoked from a fortran program

example:	CALL CFUNC       (in fortran- only executable line in pgm)

		-------
		   .
		   .
		   .
		SIGNAL(SIGALRM,func_addr);
		ALARM(SECONDS);
		   .
		   .
		   .
when the ALARM goes off, an AST fault occurs in the gsignal routine (PUSHL R2,
if I am reading my addresses correctly). gsignal allegedly sets the signal, so
the fault is occuring before it ever gets to func_addr. The c-routine that does
the signal processing, run by itself, does just fine. Anyone know why it breaks
when I surround it with a fortran program? (no editorial comments about *why* I
would want to surround a perfectly reasonable C program with an awful fortran
program, it wasn't *my* choice :-)

Is there some sort of workaround (short of taking out the signal processing)
that I could do to get this beast to work?  I've looked at SIGVEC and SIGSTACK
as a possible means of forcing an alternate stack, but I haven't been able
to get them to work, either.  Any help/hints would be appreciated.



More information about the Comp.unix.wizards mailing list