Rightly so. Sorry for posting a bug to the developer list. It's just that the bug was years old and had compiled on so many systems, plus the gfortran error message was entirely unhelpful, so I hadn't realized to look at the arguments as the cause of the error. My guess is that the F90 module in other distrubutions (MPICH, MVAPICH, IBM, ...) don't declare "intent" on the variables, so it always just went through.
> From: jsquyres_at_[hidden]
> Date: Sat, 21 May 2011 06:46:15 -0400
> To: devel_at_[hidden]
> CC: devel_at_[hidden]
> Subject: Re: [OMPI devel] F90 open-mpi module bug
> Nick's right - changing your test program to use ierr instead of 0 makes it compile on OMPI for me. Hence, the F90 module is actually doing exactly what it is supposed to do: tell you when you have a compile time error in your code. :)
> I'm not sure why it compiles for you on MPICH - perhaps they don't have an explicit F90 interface for MPI_ABORT...?
> Sent from my phone. No type good.
> On May 21, 2011, at 6:14 AM, "N.M. Maclaren" <nmm1_at_[hidden]> wrote:
> > On May 21 2011, Dan Reynolds wrote:
> >> ./test_driver.F90:12.39: call mpi_abort(MPI_COMM_WORLD, -1, 0)
> > It's unlikely to provoke that particular error, but that call is erroneous.
> > It should be something like:
> > integer :: ierror
> > call mpi_abort(MPI_COMM_WORLD, 1, ierror)
> > Negative error numbers aren't forbidden, but aren't advisable. However,
> > passing a constant to an INTENT(OUT) argument is a serious no-no.
> > I can imagine compilers where it might provoke that error, but I doubt
> > that it is the cause. It's worth fixing and retrying, anyway.
> > Regards,
> > Nick Maclaren.
> > _______________________________________________
> > devel mailing list
> > devel_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/devel
> devel mailing list