<div dir="ltr">Hello,<br><br>The following code does not compile with parallel-netcdf 1.8.1:<br><br>$cat bug.f90<br>subroutine sub(iarg)<br>  use pnetcdf<br>  implicit none<br><br>  integer, intent(in   ) :: iarg<br><br>  integer :: ncid, varid, ierr<br><br>  ierr = nf90mpi_put_var(ncid, varid, iarg)<div><br>end subroutine<br>$mpif90 -c bug.f90<br>bug.f90:9:9:<br><br>   ierr = nf90mpi_put_var(ncid, varid, iarg)<br>         1</div><div><br>Error: There is no specific function for the generic 'nf90mpi_put_var' at (1)<br><br>If the fifth line is changed to "integer, intent(inout) :: iarg", the code compiles successfully.  I assume this is a bug with the declared intent of the "values" argument to nf90mpi_put_var in the pnetcdf module, which is documented to be intent(in) according to <<a href="http://cucis.ece.northwestern.edu/projects/PnetCDF/doc/pnetcdf-c/Summary-of-Fortran-90-Interface.html#Summary-of-Fortran-90-Interface">http://cucis.ece.northwestern.edu/projects/PnetCDF/doc/pnetcdf-c/Summary-of-Fortran-90-Interface.html#Summary-of-Fortran-90-Interface</a>> but in the current parallel-netcdf library it appears to be intent(inout).  If "values" is actually supposed to be intent(inout), then the API documentation should be updated to reflect this.</div><div><br></div><div>By the way, the API documentation referenced above has several other errors.  Most notably, several of the arguments are documented to be default integers, but in current code they are actually integer(kind=mpi_offset_kind).  For example, the "start" and "count" arguments to nf90mpi_put_var have this problem.  It would be nice if the documentation could be fixed.</div><div><br></div><div>Thanks,</div><div>Brian</div><div><br></div></div>