- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are trying to use some signal handling to trap exceptions in our fortran program on Windows using SIGNALQQ. It works for some errors but not for others, for example
forrtl: severe (408): fort: (10): Subscript #1 of the array TEMP_X has value 45 which is greater than the upper bound of 2
will not be caught by the error handler, but something like an access violation will be. We are using based off of an intel example we found
i4ret = SIGNALQQ(SIG$ABORT, h_abort)
i4ret = SIGNALQQ(SIG$FPE, h_abort)
i4ret = SIGNALQQ(SIG$ILL, h_abort)
i4ret = SIGNALQQ(SIG$INT, h_abort)
i4ret = SIGNALQQ(SIG$SEGV, h_abort)
i4ret = SIGNALQQ(SIG$TERM, h_abort)
Are we missing any here or is there a different way to trap 'other' error types before the program crashes?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Not at this time, but in the next major release we'll have a new way of establishing a handler for all types of Fortran run-time errors.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page