Skip to content

Commit

Permalink
f08: move MPIR_F08_MPI_IN_PLACE and MPIR_F08_MPI_BOTTOM
Browse files Browse the repository at this point in the history
Both symbols are not used by the C binding and can be contained in the
Fortran binding. This avoids the issue of resolving common symbols
depending on the behavior of dynamic linker.
  • Loading branch information
hzhou committed Nov 30, 2021
1 parent e8b4524 commit 4ecea5a
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
3 changes: 3 additions & 0 deletions src/binding/fortran/use_mpi_f08/wrappers_c/utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
#include "cdesc.h"
#include <string.h>

int MPIR_F08_MPI_IN_PLACE;
int MPIR_F08_MPI_BOTTOM;

/*
Convert an array of strings in Fortran Format to an array of strings in C format (i.e., char* a[]).
Expand Down
2 changes: 0 additions & 2 deletions src/mpi/init/init_bindings.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,6 @@ void MPII_init_binding_cxx(void)
#ifdef HAVE_F08_BINDING
MPI_F08_status MPIR_F08_MPI_STATUS_IGNORE_OBJ;
MPI_F08_status MPIR_F08_MPI_STATUSES_IGNORE_OBJ[1];
int MPIR_F08_MPI_IN_PLACE;
int MPIR_F08_MPI_BOTTOM;

/* Although the two STATUS pointers are required but the MPI3.0, they are not used in MPICH F08 binding */
MPI_F08_status *MPI_F08_STATUS_IGNORE = &MPIR_F08_MPI_STATUS_IGNORE_OBJ;
Expand Down

0 comments on commit 4ecea5a

Please sign in to comment.