On Jul 17, 2018, at 8:49 PM, Gilles Gouaillardet <gil...@rist.or.jp> wrote: > > I noted the internal Fortran bindings (e.g. [p]ompi_barrier_f and friends) > are defined in the user facing mpi_f08.mod. > > My impressions are : > > 1. pompi_barrier_f and friends are never used (e.g. pbarrier_f08.F90 calls > ompi_barrier_f and *not* pompi_barrier_f) > > 2. these symbols could be part of an internal module that is only used at > build time, and hence do not have to end up in mpi_f08.mod > > 1) should the pompi_barrier_f and friends be called/removed/left untouched ?
I presume you are referring to the pompi_FOO_f functions (and not the ompi_FOO_f functions), right? (I ask because your opening sentence refers to "[p]ompi_barrier_f") I think you noted that [p]barrier_f08.F90 both invoke ompi_barrier_f(). So we definitely need the ompi_FOO_f() functions. But you're right -- I don't see a use of the pompi_FOO_f() functions. I can't think of why they would be invoked at all. I think they're safe to remove. > 2) is there any rationale (and which one) for having [p]ompi_foo_f symbols in > mpi_f08.mod ? Per above, I don't think there's any use for the pompi_FOO_f symbols, though. The ompi_FOO_f symbols are *prototyped* in the mpi_f08 module -- they are not defined there. We need the ompi_FOO_f symbols (which are the actual OMPI Fortran implementations in ompi/mpi/fortran/mpif-h/*_f.c) so that we can call them from F08 code. That being said, they *are* internal symbols, and we could *probably* put them in a standalone, internal-only module (which I think is what you are saying in point "2.", above). I don't think that that would created a dependency from mpi_f08.mod to our internal module...? -- Jeff Squyres jsquy...@cisco.com _______________________________________________ devel mailing list devel@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/devel