The attached patches address these issues, which are caused by the correct implementation of deprecated function deletion in Open-MPI 4. https://www.open-mpi.org/faq/?category=mpi-removed has details.
This is my first attempted contribution to Valgrind so please let me know if the patches need modifications to be accepted. Do I need to state that I license them as "GPLv2, or (at your option) any later version," in the patches? I would not object at all if someone wants the MPI_UB/MPI_LB workaround to be different, since there are a bunch of valid ways to implement it. I suppose "#ifdef MPI_UB" etc. is simpler, but I can't remember off the top of my head if the MPI standard requires that identifier to be a preprocessor symbol or if that is merely common practice, so I did not want to use a direct preprocessor test on it. Best, Jeff On Sun, Mar 1, 2020 at 1:35 PM Derrick McKee <derrick.mc...@gmail.com> wrote: > I am having a problem compiling Valgrind using OpenMPI 4.0.2. The > error is listed below. It seems it is the same bug logged in [1]. > Has there been any patch made that resolves the issue? Thanks. > > - Derrick > > [1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946329 > > Error > ----------------------------------------------------------------------- > mkdir -p ../.in_place; \ > for f in ; do \ > rm -f ../.in_place/$f.dSYM; \ > ln -f -s ../mpi/$f.dSYM ../.in_place; \ > done > In file included from ../../mpi/libmpiwrap.c:116: > ../../mpi/libmpiwrap.c: In function ‘showTy’: > ../../mpi/libmpiwrap.c:281:19: error: expected expression before > ‘_Static_assert’ > 281 | else if (ty == MPI_UB) fprintf(f,"UB"); > | ^~~~~~ > ../../mpi/libmpiwrap.c:282:19: error: expected expression before > ‘_Static_assert’ > 282 | else if (ty == MPI_LB) fprintf(f,"LB"); > | ^~~~~~ > ../../mpi/libmpiwrap.c: In function ‘showCombiner’: > ../../mpi/libmpiwrap.c:354:12: error: expected expression before > ‘_Static_assert’ > 354 | case MPI_COMBINER_HVECTOR_INTEGER: fprintf(f, > "HVECTOR_INTEGER"); break; > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../../mpi/libmpiwrap.c:354:12: error: expected expression before > ‘_Static_assert’ > ../../mpi/libmpiwrap.c:354:40: error: expected expression before ‘:’ token > 354 | case MPI_COMBINER_HVECTOR_INTEGER: fprintf(f, > "HVECTOR_INTEGER"); break; > | ^ > In file included from ../../mpi/libmpiwrap.c:116: > ../../mpi/libmpiwrap.c:359:12: error: expected expression before > ‘_Static_assert’ > 359 | case MPI_COMBINER_HINDEXED_INTEGER: fprintf(f, > "HINDEXED_INTEGER"); break; > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../../mpi/libmpiwrap.c:359:12: error: expected expression before > ‘_Static_assert’ > ../../mpi/libmpiwrap.c:359:41: error: expected expression before ‘:’ token > 359 | case MPI_COMBINER_HINDEXED_INTEGER: fprintf(f, > "HINDEXED_INTEGER"); break; > | ^ > In file included from ../../mpi/libmpiwrap.c:116: > ../../mpi/libmpiwrap.c:366:12: error: expected expression before > ‘_Static_assert’ > 366 | case MPI_COMBINER_STRUCT_INTEGER: fprintf(f, > "STRUCT_INTEGER"); break; > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../../mpi/libmpiwrap.c:366:12: error: expected expression before > ‘_Static_assert’ > ../../mpi/libmpiwrap.c:366:39: error: expected expression before ‘:’ token > 366 | case MPI_COMBINER_STRUCT_INTEGER: fprintf(f, > "STRUCT_INTEGER"); break; > | ^ > ../../mpi/libmpiwrap.c: In function ‘extentOfTy’: > ../../mpi/libmpiwrap.c:462:8: warning: implicit declaration of > function ‘PMPI_Type_extent’; did you mean ‘MPI_Type_extent’? > [-Wimplicit-function-declaration] > 462 | r = PMPI_Type_extent(ty, &n); > | ^~~~~~~~~~~~~~~~ > | MPI_Type_extent > In file included from ../../mpi/libmpiwrap.c:116: > ../../mpi/libmpiwrap.c: In function ‘walk_type’: > ../../mpi/libmpiwrap.c:736:17: error: expected expression before > ‘_Static_assert’ > 736 | if (ty == MPI_LB || ty == MPI_UB) > > -- > Derrick McKee > Phone: (703) 957-9362 > Email: derrick.mc...@gmail.com > > > _______________________________________________ > Valgrind-users mailing list > Valgrind-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/valgrind-users > -- Jeff Hammond jeff.scie...@gmail.com http://jeffhammond.github.io/
0001-use-MPI_Type_get_extent-with-MPI-2-and-later.patch
Description: Binary data
0002-conditionalize-MPI_UB-MPI_LB-on-existence.patch
Description: Binary data
_______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users