Non-zero Exit Code flag doesn't work
Posted: 23. Jan 2018, 06:57
Hi,
Flag 80 in the SPHENOINPUT block should, I believe, ensure that SPheno exits with a non-zero exit code if a failure is encountered when the flag is set to 1. SPheno keeps giving a zero exit code, despite the having an error.
Checking through the source, a common way of terminating the program when an error is found is by calling the TerminateProgram subroutine; however, this subroutine does not ever check the value of Non_Zero_Exit (which is true when Flag 80 above is 1).
I'm not really familiar with Fortran, but I suspect that replacing
with
should fix it.
Josh
Flag 80 in the SPHENOINPUT block should, I believe, ensure that SPheno exits with a non-zero exit code if a failure is encountered when the flag is set to 1. SPheno keeps giving a zero exit code, despite the having an error.
Checking through the source, a common way of terminating the program when an error is found is by calling the TerminateProgram subroutine; however, this subroutine does not ever check the value of Non_Zero_Exit (which is true when Flag 80 above is 1).
I'm not really familiar with Fortran, but I suspect that replacing
Code: Select all
Stop "Subroutine TerminateProgram"
Code: Select all
If (Non_Zero_Exit) Then
Error Stop "Subroutine TerminateProgram"
Else
Stop "Subroutine TerminateProgram"
End If
Josh