Created attachment 12780 [details] Fortran 90 testcase for zero-sized array printing.
Write statement (fortran90) fails to ignore zero-sized array when bounds on array are variable. Please see zeros.f90 file attached. This was compiled as "gfortran zeros.f90" on suse9 (x86_64) box using version 4.3.0 20061211 (experimental).
I get a segfault. ifort handles this ok
I have a patch for this.
Subject: Bug number PR30145 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-12/msg01122.html
Subject: Bug 30145 Author: jvdelisle Date: Fri Dec 15 19:54:52 2006 New Revision: 119942 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119942 Log: 2006-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * io/transfer.c (transfer_array): Check for negative extent. Modified: trunk/libgfortran/ChangeLog trunk/libgfortran/io/transfer.c
Subject: Bug 30145 Author: jvdelisle Date: Fri Dec 15 19:58:10 2006 New Revision: 119943 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119943 Log: 2006-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * gfortran.dg/write_zero_array: New test. Added: trunk/gcc/testsuite/gfortran.dg/write_zero_array.f90 Modified: trunk/gcc/testsuite/ChangeLog
Subject: Bug 30145 Author: jvdelisle Date: Tue Dec 19 06:35:04 2006 New Revision: 120043 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120043 Log: 2006-12-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * io/transfer.c (transfer_array): Check for negative extent. Modified: branches/gcc-4_2-branch/libgfortran/ChangeLog branches/gcc-4_2-branch/libgfortran/io/transfer.c
Subject: Bug 30145 Author: jvdelisle Date: Tue Dec 19 06:36:26 2006 New Revision: 120044 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120044 Log: 2006-12-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * gfortran.dg/write_zero_array.f90: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/write_zero_array.f90 Modified: branches/gcc-4_2-branch/gcc/testsuite/ChangeLog
Fixed.
Subject: Bug 30145 Author: jvdelisle Date: Mon Dec 25 22:56:54 2006 New Revision: 120200 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120200 Log: 2006-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * io/transfer.c (transfer_array): Check for negative extent. Modified: branches/gcc-4_1-branch/libgfortran/ChangeLog branches/gcc-4_1-branch/libgfortran/io/transfer.c
Subject: Bug 30145 Author: jvdelisle Date: Mon Dec 25 23:08:17 2006 New Revision: 120201 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120201 Log: 2006-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/30145 * gfortran.dg/write_zero_array.f90: New test. 2006-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/30200 * gfortran.dg/write_fmt_trim.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/write_fmt_trim.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/write_zero_array.f90 Modified: branches/gcc-4_1-branch/gcc/testsuite/ChangeLog