On Sun, Jan 05, 2014 at 04:34:45PM -0600, Jed Brown wrote:
Why can't that code use ADIOI_AINT_CAST_TO_VOID_PTR, which is equivalent to MPI_AINT_CAST_TO_VOID_PTR?
Absolutely no reason why not. Thanks for the suggestion. It's a one line change; master builds and links on blue gene and my laptop. Jed, can I have your Signed-off (as MPICH process defines it) on this? commit 029b65d59368b671977bee661c84eb98c0d1128f Author: Rob Latham <[email protected]> Date: Tue Jan 7 10:06:17 2014 -0600 Use ROMIO pointer-casting routines the code in glue_romio replicates a bit of pointer-size assertion logic. it's only used by ROMIO, though. if mpitypedefs.h is not included (see recent standalone-romio cleanups) we will get an undefined symbol at link time (MPI_AINT_CAST_TO_VOID_PTR). Use equivalent ADIOI_AINT_CAST_TO_VOID_PTR instead for this ROMIO-related code. diff --git a/src/include/glue_romio.h.in b/src/include/glue_romio.h.in index 4d60ed2f..f0743538 100644 --- a/src/include/glue_romio.h.in +++ b/src/include/glue_romio.h.in @@ -42,9 +42,10 @@ extern int MPIR_Ext_dbg_romio_terse_enabled; extern int MPIR_Ext_dbg_romio_typical_enabled; extern int MPIR_Ext_dbg_romio_verbose_enabled; -/* a copy of MPID_Ensure_Aint_fits_in_pointer for external use */ +/* a copy of MPID_Ensure_Aint_fits_in_pointer for external use, slightly + * modified to use ROMIO's version of the pointer-casting macro */ #define MPIR_Ext_ensure_Aint_fits_in_pointer(aint) \ - MPIR_Ext_assert((aint) == (MPI_Aint)(MPIR_Upint) MPI_AINT_CAST_TO_VOID_PTR(aint)); + MPIR_Ext_assert((aint) == (MPI_Aint)(MPIR_Upint) ADIOI_AINT_CAST_TO_VOID_PTR(aint)); /* to be called early by ROMIO's initialization process in order to setup init-time * glue code that cannot be initialized statically */ ==rob -- Rob Latham Mathematics and Computer Science Division Argonne National Lab, IL USA