At r173533 with or without http://gcc.gnu.org/ml/gcc-patches/2011-05/msg00566.html applied, the following new fortran testsuite regressions occur on x86_64-apple-darwin10... WARNING: gfortran.dg/coarray/image_index_1.f90 -fcoarray=single -O2 compilation failed to produce executable FAIL: gfortran.dg/coarray/image_index_1.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/image_index_1.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 (test for excess errors) WARNING: gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 compilation failed to produce executable FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/image_index_2.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable FAIL: gfortran.dg/coarray/this_image_1.f90 -fcoarray=single -O2 (test for excess errors) WARNING: gfortran.dg/coarray/this_image_1.f90 -fcoarray=single -O2 compilation failed to produce executable FAIL: gfortran.dg/coarray/this_image_1.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/this_image_1.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable FAIL: gfortran.dg/coarray/this_image_2.f90 -fcoarray=single -O2 (test for excess errors) WARNING: gfortran.dg/coarray/this_image_2.f90 -fcoarray=single -O2 compilation failed to produce executable FAIL: gfortran.dg/coarray/this_image_2.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/this_image_2.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable these are of the form... Executing on host: /sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../gfortran -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../ -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/ /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90 -fcoarray=single -O2 -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libiberty -lm -m32 -o ./image_index_1.exe (timeout = 300) /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:84.26: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:85.26: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:90.26: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:91.26: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:29.24: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:30.24: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:35.24: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:36.24: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:45.24: index1 = image_index(d, [-1, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:46.24: index2 = image_index(d, [0, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:53.24: index1 = image_index(e, [-1, 3] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:54.24: index2 = image_index(e, [-1, 4] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:67.24: index1 = image_index(a, [1, 0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:68.24: index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah! 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:69.24: index3 = image_index(a, [3, 1, 0] ) ! = 13 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 compiler exited with status 1 output is: /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:84.26: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:85.26: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:90.26: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:91.26: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:29.24: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:30.24: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:35.24: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:36.24: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:45.24: index1 = image_index(d, [-1, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:46.24: index2 = image_index(d, [0, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:53.24: index1 = image_index(e, [-1, 3] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:54.24: index2 = image_index(e, [-1, 4] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:67.24: index1 = image_index(a, [1, 0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:68.24: index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah! 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90:69.24: index3 = image_index(a, [3, 1, 0] ) ! = 13 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 FAIL: gfortran.dg/coarray/image_index_1.f90 -fcoarray=single -O2 (test for excess errors)
Also possibly related are the failures... FAIL: gfortran.dg/coarray_10.f90 -O (test for excess errors) Excess errors: /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_10.f90:11:34: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 4 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_10.f90:12:34: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 4 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_10.f90:13:34: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 4 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_10.f90:14:34: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_10.f90:15:34: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 5 FAIL: gfortran.dg/coarray_13.f90 -O0 (test for excess errors) Excess errors: /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:121:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:122:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:123:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:99:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:100:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:101:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:59:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:60:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:61:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:38:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:39:12: Error: Shapes for operands at (1) and (2) are not conformable /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_13.f90:40:12: Error: Shapes for operands at (1) and (2) are not conformable FAIL: gfortran.dg/coarray_16.f90 -O0 (test for excess errors) Excess errors: /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:85:26: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:86:26: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:91:26: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:92:26: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:30:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:31:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:36:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:37:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:46:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:47:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:54:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:55:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:68:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:69:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_16.f90:70:24: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 FAIL: gfortran.dg/coarray_17.f90 -O (test for errors, line 19) FAIL: gfortran.dg/coarray_17.f90 -O (test for excess errors) Excess errors: /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_17.f90:18:28: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110507/gcc/testsuite/gfortran.dg/coarray_17.f90:19:28: Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3
Works for me with trunk Rev. 173528. Does anyone else see these issues - and can debug them? Jack, can you double check that you have a clean trunk and not some stray patches applied? Looking at http://gcc.gnu.org/ml/gcc-testresults/2011-05/, I see: - No (coarray) failures on - i686-pc-linux-gnu (20110508, Rev. 173548), - powerpc-apple-darwin9.8.0 (20110507) - x86_64-unknown-linux-gnu - i686-pc-linux-gnu - s390x-ibm-linux-gnu - s390-ibm-linux-gnu - x86_64-unknown-freebsd8.2 - One failure on ia64-debian-linux-gnu (20110507): http://gcc.gnu.org/ml/gcc-testresults/2011-05/msg00849.html FAIL: gfortran.dg/coarray/this_image_2.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/this_image_2.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable
A clean tree at gcc trunk r173643 with a standard non-LTO bootstrap produces different failures on x86_64-apple-darwin10... FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 (internal compiler error) FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 (test for excess errors) WARNING: gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 compilation failed to produce executable FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=lib -O2 -lcaf_single (internal compiler error) FAIL: gfortran.dg/coarray/image_index_2.f90 -fcoarray=lib -O2 -lcaf_single (test for excess errors) WARNING: gfortran.dg/coarray/image_index_2.f90 -fcoarray=lib -O2 -lcaf_single compilation failed to produce executable FAIL: gfortran.dg/coarray_20.f90 -O (test for errors, line 10) FAIL: gfortran.dg/coarray_20.f90 -O (test for excess errors) which are of the form... Executing on host: /sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../gfortran -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../ -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/ /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 -fcoarray=single -O2 -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/.libs -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libquadmath/.libs -L/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libiberty -lm -m32 -o ./image_index_2.exe (timeout = 300) /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90: In function 'test':^M /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90:50:0: internal compiler error: in gfc_conv_descriptor_dimension, at fortran/trans-array.c:257 which backtraces as... [MacPro-2:~/coarray_bug] howarth% gdb /sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../f951 ... (gdb) break fancy_abortBreakpoint 1 at 0x10042851b: file ../../gcc-4.7-20110511/gcc/diagnostic.c, line 893.(gdb) r /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 -fPIC -quiet -dumpbase image_index_2.f90 -mmacosx-version-min=10.6.7 -m32 -mtune=core2 -auxbase image_index_2 -O2 -version -fcoarray=single -fintrinsic-modules-path finclude -o /var/folders/1C/1CdoNxmNFHyOIjNBLNuJh++++TM/-Tmp-//cczFxApJ.s Starting program: /sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/f951 /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 -fPIC -quiet -dumpbase image_index_2.f90 -mmacosx-version-min=10.6.7 -m32 -mtune=core2 -auxbase image_index_2 -O2 -version -fcoarray=single -fintrinsic-modules-path finclude -o /var/folders/1C/1CdoNxmNFHyOIjNBLNuJh++++TM/-Tmp-//cczFxApJ.s ... Breakpoint 1, fancy_abort (file=0x100a74200 "../../gcc-4.7-20110511/gcc/fortran/trans-array.c", line=257, function=0x100ae7f40 "gfc_conv_descriptor_dimension") at ../../gcc-4.7-20110511/gcc/diagnostic.c:893 893 internal_error ("in %s, at %s:%d", function, trim_filename (file), line); (gdb) bt #0 fancy_abort (file=0x100a74200 "../../gcc-4.7-20110511/gcc/fortran/trans-array.c", line=257, function=0x100ae7f40 "gfc_conv_descriptor_dimension") at ../../gcc-4.7-20110511/gcc/diagnostic.c:893 #1 0x00000001000b25f8 in gfc_conv_descriptor_dimension (desc=0x141e04600, dim=0x141e0fe00) at ../../gcc-4.7-20110511/gcc/fortran/trans-array.c:257
Also the failure... FAIL: gfortran.dg/coarray_20.f90 -O (test for errors, line 10) FAIL: gfortran.dg/coarray_20.f90 -O (test for excess errors) appears as... Executing on host: /sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../gfortran -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/gcc/testsuite/gfortran/../../ -B/sw/src/fink.build/gcc47-4.7.0-1000/darwin_objdir/x86_64-apple-darwin10.7.0/i386/libgfortran/ /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray_20.f90 -O -fcoarray=single -S -m32 -o coarray_20.s (timeout = 300) /sw/src/fink.build/gcc47-4.7.0-1000/gcc-4.7-20110511/gcc/testsuite/gfortran.dg/coarray_20.f90:10.9:^M ^M call bar(A) ! { dg-error "Rank mismatch in argument" }^M 1^M Error: Actual argument to 'x' at (1) must be simply contiguous^M
Dominique, I think you also have an x86_64-apple-darwin10. Do you also see failures - for instance with -m32? (In reply to comment #2) > - One failure on ia64-debian-linux-gnu (20110507): Whatever the reason was, it does not fail anymore. Thus, we have success (no coarray failures) on i686, powerpc, x86_64, s390x and s390 under Linux, FreeBSD, Darwin, and with hppa-Linux/hppa-hpux. I think there might be a true bug - but as long it does not fail with my system, I cannot debug it. Thus, it needs to be debugged by someone on whose system it fails.
(In reply to comment #5) > Dominique, I think you also have an x86_64-apple-darwin10. Do you also see > failures - for instance with -m32? > > (In reply to comment #2) > > - One failure on ia64-debian-linux-gnu (20110507): > > Whatever the reason was, it does not fail anymore. Thus, we have success (no > coarray failures) on i686, powerpc, x86_64, s390x and s390 under Linux, > FreeBSD, Darwin, and with hppa-Linux/hppa-hpux. > > I think there might be a true bug - but as long it does not fail with my > system, I cannot debug it. Thus, it needs to be debugged by someone on whose > system it fails. My mistake. I had the gcc/testsuite/gfortran.dg/coarray_20.f90 and gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 left behind from http://gcc.gnu.org/ml/gcc-patches/2011-05/msg00566.html.
(In reply to comment #6) > My mistake. I had the gcc/testsuite/gfortran.dg/coarray_20.f90 and > gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 left behind from > http://gcc.gnu.org/ml/gcc-patches/2011-05/msg00566.html. I close this bug as INVALID; if there is still an issue, please reopen - or fill a new bug as this one starts to become cluttered.
I can confirm the problem on x86_64-pc-linux-gnu with recent mainline: === gfortran Summary for unix === # of expected passes 37815 # of unexpected failures 25 # of expected failures 38 # of unresolved testcases 1 # of unsupported tests 44 === gfortran Summary for unix/-m32 === # of expected passes 37525 # of unexpected failures 25 # of expected failures 38 # of unresolved testcases 1 # of unsupported tests 185 Compiler version: 4.7.0 20110709 (experimental) [trunk revision 176079] (GCC) Platform: x86_64-unknown-linux-gnu configure flags: --enable-build-with-cxx --enable-languages=c,c++,fortran Please configure your build with --enable-build-with-cxx to trigger this problem, see i.e. [1]. [1] http://gcc.gnu.org/ml/gcc-testresults/2011-05/msg03654.html
[uros@localhost coarray]$ ~/gcc-build/gcc/f951 -O2 -fcoarray=single -quiet image_index_1.f90 image_index_1.f90:84.26: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:85.26: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:90.26: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:91.26: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:29.24: index1 = image_index(a, [3, -4, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:30.24: index2 = image_index(b, [-1, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:35.24: index1 = image_index(a, [3, -3, 88] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:36.24: index2 = image_index(b, [0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:45.24: index1 = image_index(d, [-1, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:46.24: index2 = image_index(d, [0, 1] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:53.24: index1 = image_index(e, [-1, 3] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:54.24: index2 = image_index(e, [-1, 4] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 2 image_index_1.f90:67.24: index1 = image_index(a, [1, 0, 0] ) 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:68.24: index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah! 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3 image_index_1.f90:69.24: index3 = image_index(a, [3, 1, 0] ) ! = 13 1 Error: The number of array elements of the SUB argument to IMAGE_INDEX at (1) shall be 1 (corank) not 3
Well, gfc_get_corank should not be declared as bool.
Patch in testing: --cut here-- Index: gfortran.h =================================================================== --- gfortran.h (revision 176079) +++ gfortran.h (working copy) @@ -2734,7 +2734,7 @@ bool gfc_is_proc_ptr_comp (gfc_expr *, gfc_component **); bool gfc_is_coindexed (gfc_expr *); -bool gfc_get_corank (gfc_expr *); +int gfc_get_corank (gfc_expr *); bool gfc_has_ultimate_allocatable (gfc_expr *); bool gfc_has_ultimate_pointer (gfc_expr *); Index: expr.c =================================================================== --- expr.c (revision 176079) +++ expr.c (working copy) @@ -4143,7 +4143,7 @@ } -bool +int gfc_get_corank (gfc_expr *e) { int corank; --cut here--
(In reply to comment #10) > Well, gfc_get_corank should not be declared as bool. Ups! Well spotted! That's obviously a cut-'n'-paste error (from copying gfc_is_coindexed). The patch (comment 11) is OK and obvious. (Assuming it regtests.)
Author: uros Date: Sat Jul 9 17:35:44 2011 New Revision: 176088 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176088 Log: PR fortran/48926 * expr.c (gfc_get_corank): Change return value to int. * gfortran.h (gfc_get_corank): Update function prototype. Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/expr.c trunk/gcc/fortran/gfortran.h
Author: uros Date: Sat Jul 9 18:51:19 2011 New Revision: 176089 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176089 Log: PR fortran/48926 * expr.c (gfc_get_corank): Change return value to int. * gfortran.h (gfc_get_corank): Update function prototype. Modified: branches/gcc-4_6-branch/gcc/fortran/ChangeLog branches/gcc-4_6-branch/gcc/fortran/expr.c branches/gcc-4_6-branch/gcc/fortran/gfortran.h
Fixed for 4.6.2+.