From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10693 invoked by alias); 9 Jan 2007 23:14:08 -0000 Received: (qmail 10665 invoked by alias); 9 Jan 2007 23:13:56 -0000 Date: Tue, 09 Jan 2007 23:14:00 -0000 Message-ID: <20070109231356.10664.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/30321] program crash for SUM applied to zero-size array In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "tkoenig at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-01/txt/msg00760.txt.bz2 ------- Comment #6 from tkoenig at gcc dot gnu dot org 2007-01-09 23:13 ------- Subject: Bug 30321 Author: tkoenig Date: Tue Jan 9 23:13:42 2007 New Revision: 120623 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120623 Log: 2007-01-08 Thomas Koenig PR libfortran/30321 Backport from trunk * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Check for extents < 0 for zero-sized arrays. If no retarray has been specified and the size is zero, return early. (`m'name`'rtype_qual`_'atype_code): Likewise. * generated/all_l16.c: Regenerated. * generated/all_l4.c: Regenerated. * generated/all_l8.c: Regenerated. * generated/any_l16.c: Regenerated. * generated/any_l4.c: Regenerated. * generated/any_l8.c: Regenerated. * generated/count_16_l16.c: Regenerated. * generated/count_16_l4.c: Regenerated. * generated/count_16_l8.c: Regenerated. * generated/count_4_l16.c: Regenerated. * generated/count_4_l4.c: Regenerated. * generated/count_4_l8.c: Regenerated. * generated/count_8_l16.c: Regenerated. * generated/count_8_l4.c: Regenerated. * generated/count_8_l8.c: Regenerated. * generated/cshift1_16.c: Regenerated. * generated/cshift1_4.c: Regenerated. * generated/cshift1_8.c: Regenerated. * generated/maxloc1_16_i16.c: Regenerated. * generated/maxloc1_16_i4.c: Regenerated. * generated/maxloc1_16_i8.c: Regenerated. * generated/maxloc1_16_r10.c: Regenerated. * generated/maxloc1_16_r16.c: Regenerated. * generated/maxloc1_16_r4.c: Regenerated. * generated/maxloc1_16_r8.c: Regenerated. * generated/maxloc1_4_i16.c: Regenerated. * generated/maxloc1_4_i4.c: Regenerated. * generated/maxloc1_4_i8.c: Regenerated. * generated/maxloc1_4_r10.c: Regenerated. * generated/maxloc1_4_r16.c: Regenerated. * generated/maxloc1_4_r4.c: Regenerated. * generated/maxloc1_4_r8.c: Regenerated. * generated/maxloc1_8_i16.c: Regenerated. * generated/maxloc1_8_i4.c: Regenerated. * generated/maxloc1_8_i8.c: Regenerated. * generated/maxloc1_8_r10.c: Regenerated. * generated/maxloc1_8_r16.c: Regenerated. * generated/maxloc1_8_r4.c: Regenerated. * generated/maxloc1_8_r8.c: Regenerated. * generated/maxval_i16.c: Regenerated. * generated/maxval_i4.c: Regenerated. * generated/maxval_i8.c: Regenerated. * generated/maxval_r10.c: Regenerated. * generated/maxval_r16.c: Regenerated. * generated/maxval_r4.c: Regenerated. * generated/maxval_r8.c: Regenerated. * generated/minloc1_16_i16.c: Regenerated. * generated/minloc1_16_i4.c: Regenerated. * generated/minloc1_16_i8.c: Regenerated. * generated/minloc1_16_r10.c: Regenerated. * generated/minloc1_16_r16.c: Regenerated. * generated/minloc1_16_r4.c: Regenerated. * generated/minloc1_16_r8.c: Regenerated. * generated/minloc1_4_i16.c: Regenerated. * generated/minloc1_4_i4.c: Regenerated. * generated/minloc1_4_i8.c: Regenerated. * generated/minloc1_4_r10.c: Regenerated. * generated/minloc1_4_r16.c: Regenerated. * generated/minloc1_4_r4.c: Regenerated. * generated/minloc1_4_r8.c: Regenerated. * generated/minloc1_8_i16.c: Regenerated. * generated/minloc1_8_i4.c: Regenerated. * generated/minloc1_8_i8.c: Regenerated. * generated/minloc1_8_r10.c: Regenerated. * generated/minloc1_8_r16.c: Regenerated. * generated/minloc1_8_r4.c: Regenerated. * generated/minloc1_8_r8.c: Regenerated. * generated/minval_i16.c: Regenerated. * generated/minval_i4.c: Regenerated. * generated/minval_i8.c: Regenerated. * generated/minval_r10.c: Regenerated. * generated/minval_r16.c: Regenerated. * generated/minval_r4.c: Regenerated. * generated/minval_r8.c: Regenerated. * generated/product_c10.c: Regenerated. * generated/product_c16.c: Regenerated. * generated/product_c4.c: Regenerated. * generated/product_c8.c: Regenerated. * generated/product_i16.c: Regenerated. * generated/product_i4.c: Regenerated. * generated/product_i8.c: Regenerated. * generated/product_r10.c: Regenerated. * generated/product_r16.c: Regenerated. * generated/product_r4.c: Regenerated. * generated/product_r8.c: Regenerated. * generated/sum_c10.c: Regenerated. * generated/sum_c16.c: Regenerated. * generated/sum_c4.c: Regenerated. * generated/sum_c8.c: Regenerated. * generated/sum_i16.c: Regenerated. * generated/sum_i4.c: Regenerated. * generated/sum_i8.c: Regenerated. * generated/sum_r10.c: Regenerated. * generated/sum_r16.c: Regenerated. * generated/sum_r4.c: Regenerated. * generated/sum_r8.c: Regenerated. 2006-01-08 Thomas Koenig PR libfortran/30321 * gfortran.dg/sum_zero_array_1.f90: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/sum_zero_array_1.f90 Modified: branches/gcc-4_2-branch/gcc/testsuite/ChangeLog branches/gcc-4_2-branch/libgfortran/ChangeLog branches/gcc-4_2-branch/libgfortran/generated/all_l16.c branches/gcc-4_2-branch/libgfortran/generated/all_l4.c branches/gcc-4_2-branch/libgfortran/generated/all_l8.c branches/gcc-4_2-branch/libgfortran/generated/any_l16.c branches/gcc-4_2-branch/libgfortran/generated/any_l4.c branches/gcc-4_2-branch/libgfortran/generated/any_l8.c branches/gcc-4_2-branch/libgfortran/generated/count_16_l16.c branches/gcc-4_2-branch/libgfortran/generated/count_16_l4.c branches/gcc-4_2-branch/libgfortran/generated/count_16_l8.c branches/gcc-4_2-branch/libgfortran/generated/count_4_l16.c branches/gcc-4_2-branch/libgfortran/generated/count_4_l4.c branches/gcc-4_2-branch/libgfortran/generated/count_4_l8.c branches/gcc-4_2-branch/libgfortran/generated/count_8_l16.c branches/gcc-4_2-branch/libgfortran/generated/count_8_l4.c branches/gcc-4_2-branch/libgfortran/generated/count_8_l8.c branches/gcc-4_2-branch/libgfortran/generated/cshift1_16.c branches/gcc-4_2-branch/libgfortran/generated/cshift1_4.c branches/gcc-4_2-branch/libgfortran/generated/cshift1_8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_i16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_i4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_i8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_r10.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_r16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_r4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_16_r8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_i16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_i4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_i8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_r10.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_r16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_r4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_4_r8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_i16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_i4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_i8.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_r10.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_r16.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_r4.c branches/gcc-4_2-branch/libgfortran/generated/maxloc1_8_r8.c branches/gcc-4_2-branch/libgfortran/generated/maxval_i16.c branches/gcc-4_2-branch/libgfortran/generated/maxval_i4.c branches/gcc-4_2-branch/libgfortran/generated/maxval_i8.c branches/gcc-4_2-branch/libgfortran/generated/maxval_r10.c branches/gcc-4_2-branch/libgfortran/generated/maxval_r16.c branches/gcc-4_2-branch/libgfortran/generated/maxval_r4.c branches/gcc-4_2-branch/libgfortran/generated/maxval_r8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_i16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_i4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_i8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_r10.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_r16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_r4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_16_r8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_i16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_i4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_i8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_r10.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_r16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_r4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_4_r8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_i16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_i4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_i8.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_r10.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_r16.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_r4.c branches/gcc-4_2-branch/libgfortran/generated/minloc1_8_r8.c branches/gcc-4_2-branch/libgfortran/generated/minval_i16.c branches/gcc-4_2-branch/libgfortran/generated/minval_i4.c branches/gcc-4_2-branch/libgfortran/generated/minval_i8.c branches/gcc-4_2-branch/libgfortran/generated/minval_r10.c branches/gcc-4_2-branch/libgfortran/generated/minval_r16.c branches/gcc-4_2-branch/libgfortran/generated/minval_r4.c branches/gcc-4_2-branch/libgfortran/generated/minval_r8.c branches/gcc-4_2-branch/libgfortran/generated/product_c10.c branches/gcc-4_2-branch/libgfortran/generated/product_c16.c branches/gcc-4_2-branch/libgfortran/generated/product_c4.c branches/gcc-4_2-branch/libgfortran/generated/product_c8.c branches/gcc-4_2-branch/libgfortran/generated/product_i16.c branches/gcc-4_2-branch/libgfortran/generated/product_i4.c branches/gcc-4_2-branch/libgfortran/generated/product_i8.c branches/gcc-4_2-branch/libgfortran/generated/product_r10.c branches/gcc-4_2-branch/libgfortran/generated/product_r16.c branches/gcc-4_2-branch/libgfortran/generated/product_r4.c branches/gcc-4_2-branch/libgfortran/generated/product_r8.c branches/gcc-4_2-branch/libgfortran/generated/sum_c10.c branches/gcc-4_2-branch/libgfortran/generated/sum_c16.c branches/gcc-4_2-branch/libgfortran/generated/sum_c4.c branches/gcc-4_2-branch/libgfortran/generated/sum_c8.c branches/gcc-4_2-branch/libgfortran/generated/sum_i16.c branches/gcc-4_2-branch/libgfortran/generated/sum_i4.c branches/gcc-4_2-branch/libgfortran/generated/sum_i8.c branches/gcc-4_2-branch/libgfortran/generated/sum_r10.c branches/gcc-4_2-branch/libgfortran/generated/sum_r16.c branches/gcc-4_2-branch/libgfortran/generated/sum_r4.c branches/gcc-4_2-branch/libgfortran/generated/sum_r8.c branches/gcc-4_2-branch/libgfortran/m4/ifunction.m4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30321