#if defined(PETSC_HAVE_FORTRAN_TYPE_STAR) interface subroutine PetscSFBcastBegin(sf, unit, rarray, larray, op, ierr) use, intrinsic :: ISO_C_binding import tPetscSF PetscSF :: sf PetscMPIInt :: unit, op type(*) :: rarray(:) type(*) :: larray(:) PetscErrorCode :: ierr end subroutine PetscSFBcastBegin subroutine PetscSFBcastEnd(sf, unit, rarray, larray, op, ierr) use, intrinsic :: ISO_C_binding import tPetscSF PetscSF :: sf PetscMPIInt :: unit, op type(*) :: rarray(:) type(*) :: larray(:) PetscErrorCode :: ierr end subroutine PetscSFBcastEnd subroutine PetscSFReduceBegin(sf, unit, larray, rarray, op, ierr) use, intrinsic :: ISO_C_binding import tPetscSF PetscSF :: sf PetscMPIInt :: unit, op type(*) :: larray(:) type(*) :: rarray(:) PetscErrorCode :: ierr end subroutine PetscSFReduceBegin subroutine PetscSFReduceEnd(sf, unit, larray, rarray, op, ierr) use, intrinsic :: ISO_C_binding import tPetscSF PetscSF :: sf PetscMPIInt :: unit, op type(*) :: larray(:) type(*) :: rarray(:) PetscErrorCode :: ierr end subroutine PetscSFReduceEnd end interface #endif interface subroutine VecRestoreOwnershipRanges(v, ptr, ierr) use, intrinsic :: ISO_C_binding import tVec Vec :: v PetscInt, pointer :: ptr(:) PetscErrorCode, intent(out) :: ierr end subroutine VecRestoreOwnershipRanges subroutine PetscSFRestoreGraph(sf, nroots, nleaves, ilocal, iremote, ierr) use, intrinsic :: ISO_C_binding import tPetscSF, sPetscSFNode PetscSF :: sf PetscInt :: nroots, nleaves PetscInt, pointer :: ilocal(:) type(sPetscSFNode), pointer :: iremote(:) PetscErrorCode :: ierr end subroutine PetscSFRestoreGraph subroutine VecRestoreValuesSection(v, s, p, va, ierr) use, intrinsic :: ISO_C_binding import tVec, tPetscSection PetscScalar, pointer :: va(:) PetscErrorCode ierr Vec v PetscSection s PetscInt p end subroutine end interface