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