Actual source code: somefort.F90
1: !
2: ! Prevents: Warning: Same actual argument associated with INTENT(IN)
3: ! argument 'errorcode' and INTENT(OUT) argument 'ierror' at (1)
4: ! when MPI_Abort() is called directly
5: !
7: #include <petsc/finclude/petscsys.h>
9: subroutine MPIU_Abort(comm,ierr)
10: implicit none
11: MPI_Comm comm
12: PetscMPIInt ierr, nierr, ciportable
13: call PetscCIEnabledPortableErrorOutput(ciportable)
14: if (ciportable == 1) then
15: call MPI_Finalize(nierr)
16: stop 0
17: else
18: call MPI_Abort(comm,ierr,nierr)
19: endif
20: end
21: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
22: !DEC$ ATTRIBUTES DLLEXPORT::MPIU_Abort
23: #endif
25: subroutine PetscFortranPrintToFileUnit(unit,str,ierr)
26: implicit none
27: character(*) str
28: integer4 unit
29: PetscErrorCode ierr
30: write(unit=unit, fmt="(A)", advance='no') str
31: ierr = 0
32: end
33: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
34: !DEC$ ATTRIBUTES DLLEXPORT::PetscFortranPrintToFileUnit
35: #endif
37: ! This uses F2003 feature - and is the preferred mode for accessing command line arguments
38: integer function PetscCommandArgumentCount()
39: implicit none
40: PetscCommandArgumentCount = command_argument_count()
41: end
43: subroutine PetscGetCommandArgument(n,val)
44: implicit none
45: integer, intent(in) :: n
46: character(*) val
47: call get_command_argument(n,val)
48: end