Gilles, Your patch looks good to me and I think this issue should be fixed in the upcoming openmpi-1.8.3. Could you commit it to the trunk and create a CMR for it?
Tetsuya > Mishima-san, > > the root cause is macro expansion does not always occur as one would > have expected ... > > could you please give a try to the attached patch ? > > it compiles (at least with gcc) and i made zero tests so far .... > > Cheers, > > Gilles > > On 2014/09/01 10:44, tmish...@jcity.maeda.co.jp wrote: > > Hi folks, > > > > I tried to build openmpi-1.8.2 with PGI fortran and -i8(64bit fortran int) > > option > > as shown below: > > > > ./configure \ > > --prefix=/home/mishima/opt/mpi/openmpi-1.8.2-pgi14.7_int64 \ > > --enable-abi-breaking-fortran-status-i8-fix \ > > --with-tm \ > > --with-verbs \ > > --disable-ipv6 \ > > CC=pgcc CFLAGS="-tp k8-64e -fast" \ > > CXX=pgCC CXXFLAGS="-tp k8-64e -fast" \ > > F77=pgfortran FFLAGS="-i8 -tp k8-64e -fast" \ > > FC=pgfortran FCFLAGS="-i8 -tp k8-64e -fast" > > > > Then I saw this compile error in making oshmem at the last stage: > > > > if test ! -r pshmem_real8_swap_f.c ; then \ > > pname=`echo pshmem_real8_swap_f.c | cut -b '2-'` ; \ > > ln -s ../../../../oshmem/shmem/fortran/$pname > > pshmem_real8_swap_f.c ; \ > > fi > > CC pshmem_real8_swap_f.lo > > if test ! -r pshmem_int4_cswap_f.c ; then \ > > pname=`echo pshmem_int4_cswap_f.c | cut -b '2-'` ; \ > > ln -s ../../../../oshmem/shmem/fortran/$pname > > pshmem_int4_cswap_f.c ; \ > > fi > > CC pshmem_int4_cswap_f.lo > > PGC-S-0058-Illegal lvalue (pshmem_int4_cswap_f.c: 39) > > PGC/x86-64 Linux 14.7-0: compilation completed with severe errors > > make[3]: *** [pshmem_int4_cswap_f.lo] Error 1 > > make[3]: Leaving directory > > `/home/mishima/mis/openmpi/openmpi-pgi14.7/int64/openmpi-1.8.2/oshmem/shmem/fortran/profile' > > make[2]: *** [all-recursive] Error 1 > > make[2]: Leaving directory > > `/home/mishima/mis/openmpi/openmpi-pgi14.7/int64/openmpi-1.8.2/oshmem/shmem/fortran' > > make[1]: *** [all-recursive] Error 1 > > make[1]: Leaving directory > > `/home/mishima/mis/openmpi/openmpi-pgi14.7/int64/openmpi-1.8.2/oshmem' > > make: *** [all-recursive] Error 1 > > > > I confirmed that it worked if I added configure option of --disable-oshmem. > > So, I hope that oshmem experts would fix this problem. > > > > (additional note) > > I switched to use gnu compiler and checked with this configuration, then > > I got the same error: > > > > ./configure \ > > --prefix=/home/mishima/opt/mpi/openmpi-1.8.2-gnu_int64 \ > > --enable-abi-breaking-fortran-status-i8-fix \ > > --disable-ipv6 \ > > F77=gfortran \ > > FC=gfortran \ > > CC=gcc \ > > CXX=g++ \ > > FFLAGS="-m64 -fdefault-integer-8" \ > > FCFLAGS="-m64 -fdefault-integer-8" \ > > CFLAGS=-m64 \ > > CXXFLAGS=-m64 > > > > make > > .... > > if test ! -r pshmem_int4_cswap_f.c ; then \ > > pname=`echo pshmem_int4_cswap_f.c | cut -b '2-'` ; \ > > ln -s ../../../../oshmem/shmem/fortran/$pname > > pshmem_int4_cswap_f.c ; \ > > fi > > CC pshmem_int4_cswap_f.lo > > pshmem_int4_cswap_f.c: In function 'shmem_int4_cswap_f': > > pshmem_int4_cswap_f.c:39: error: invalid lvalue in unary '&' > > make[3]: *** [pshmem_int4_cswap_f.lo] Error 1 > > > > Regards > > Tetsuya Mishima > > > > _______________________________________________ > > devel mailing list > > de...@open-mpi.org > > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel > > Link to this post: http://www.open-mpi.org/community/lists/devel/2014/08/15764.php > > - oshmem.i8.patch_______________________________________________ > devel mailing list > de...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/develSearchable archives: http://www.open-mpi.org/community/lists/devel/2014/09/index.php