Path: utzoo!utgpu!cunews!bnrgate!brtph3!brchh104!brchs1!bnr.ca!rice.edu!sun-spots-request From: zhang@buast7.bu.edu (Zhang Yun Fei) Newsgroups: comp.sys.sun Subject: IEEE error handler for Sun FORTRAN Keywords: Software Message-ID: <1402@brchh104.bnr.ca> Date: 23 Jan 91 19:41:37 GMT Sender: news@brchh104.bnr.ca Organization: Sun-Spots Lines: 24 Approved: Sun-Spots@rice.edu X-Sun-Spots-Digest: Volume 10, Issue 27, message 12 X-Note: Submissions: sun-spots@rice.edu, Admin: sun-spots-request@rice.edu I have a question about the error handler of SUN FORTRAN. The question is how to locate the location where an arithmetic error occurs in a program. This is especially helpful as I am writing a computation-intensive code. On VAX/VMS machines, the code will crash when it encounter these arithmetic error and tell the user where it occures. However, on SUNs, it only shows a message at the end of the job says something like the following: > Warning: the following IEEE floating-point arithmetic exceptions > occurred in this program and were never cleared: > Inexact; Division by Zero; Invalid Operand; ..... My question is how the determine the point(s) in the code where such indicated arithmetic exceptions happened. Try to modifying the IEEE error handler (e.g. sigfpe_ieee, etc.) seems a possible approach. But it involves changes in these lower level routine, which I am reluctant to try. Is there any other option I can have to archive the some goal? (e.g., compiletion/linking options or software tools). Any suggestion are welcome. Please E-mail your resopnse to this message to zhang@buast0.bu.edu. If there are enough people interesting in these topic, I will summarize the responses on the newsgroup.