------- Comment #8 from tkoenig at gcc dot gnu dot org 2008-05-06 20:47 ------- Subject: Bug 35995
Author: tkoenig Date: Tue May 6 20:46:41 2008 New Revision: 134999 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=134999 Log: 2008-05-06 Thomas Koenig <[EMAIL PROTECTED]> PR libfortran/35995 PR libfortran/35990 Backport from trunk. * m4/ifunction_logical.m4: If the extent of "array" is less than zero, set it to zero. Use an explicit flag for breaking out of the main loop to avoid, because the data pointer for "array" may be NULL for an empty array. * m4/ifunction.m4: Likewise. * generated/all_l1.c: Regenerated. * generated/all_l16.c: Regenerated. * generated/all_l2.c: Regenerated. * generated/all_l4.c: Regenerated. * generated/all_l8.c: Regenerated. * generated/any_l1.c: Regenerated. * generated/any_l16.c: Regenerated. * generated/any_l2.c: Regenerated. * generated/any_l4.c: Regenerated. * generated/any_l8.c: Regenerated. * generated/count_16_l.c: Regenerated. * generated/count_1_l.c: Regenerated. * generated/count_2_l.c: Regenerated. * generated/count_4_l.c: Regenerated. * generated/count_8_l.c: Regenerated. * generated/maxloc1_16_i1.c: Regenerated. * generated/maxloc1_16_i16.c: Regenerated. * generated/maxloc1_16_i2.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_i1.c: Regenerated. * generated/maxloc1_4_i16.c: Regenerated. * generated/maxloc1_4_i2.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_i1.c: Regenerated. * generated/maxloc1_8_i16.c: Regenerated. * generated/maxloc1_8_i2.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_i1.c: Regenerated. * generated/maxval_i16.c: Regenerated. * generated/maxval_i2.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_i1.c: Regenerated. * generated/minloc1_16_i16.c: Regenerated. * generated/minloc1_16_i2.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_i1.c: Regenerated. * generated/minloc1_4_i16.c: Regenerated. * generated/minloc1_4_i2.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_i1.c: Regenerated. * generated/minloc1_8_i16.c: Regenerated. * generated/minloc1_8_i2.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_i1.c: Regenerated. * generated/minval_i16.c: Regenerated. * generated/minval_i2.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_i1.c: Regenerated. * generated/product_i16.c: Regenerated. * generated/product_i2.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_i1.c: Regenerated. * generated/sum_i16.c: Regenerated. * generated/sum_i2.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. * intrinsics/pack_generic.c: If an extent of the source array is less then zero, set it to zero. Set the source pointer to NULL if the source size is zero. Set the total number of elements to zero if the vector has an extent less or equal to zero. * m4/pack.m4: Set the source pointer to NULL if the source array is zero-sized. Set the total number of elemements to zero if the vector has an extent less or equal to zero. * generated/pack_i1.c: Regenerated. * generated/pack_i2.c: Regenerated. * generated/pack_i4.c: Regenerated. * generated/pack_i8.c: Regenerated. * generated/pack_i16.c: Regenerated. * generated/pack_r4.c: Regenerated. * generated/pack_r8.c: Regenerated. * generated/pack_r10.c: Regenerated. * generated/pack_r16.c: Regenerated. * generated/pack_c4.c: Regenerated. * generated/pack_c8.c: Regenerated. * generated/pack_c10.c: Regenerated. * generated/pack_c16.c: Regenerated. 2008-05-06 Thomas Koenig <[EMAIL PROTECTED]> PR libfortran/35995 PR libfortran/35990 Backport from trunk * gfortran.dg/intrinsic_ifunction_1.f90: New test case. * gfortran.dg/intrinsic_pack_4.f90: New test case. Added: branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f90 branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/intrinsic_pack_4.f90 Modified: branches/gcc-4_3-branch/gcc/testsuite/ChangeLog branches/gcc-4_3-branch/libgfortran/ChangeLog branches/gcc-4_3-branch/libgfortran/generated/all_l1.c branches/gcc-4_3-branch/libgfortran/generated/all_l16.c branches/gcc-4_3-branch/libgfortran/generated/all_l2.c branches/gcc-4_3-branch/libgfortran/generated/all_l4.c branches/gcc-4_3-branch/libgfortran/generated/all_l8.c branches/gcc-4_3-branch/libgfortran/generated/any_l1.c branches/gcc-4_3-branch/libgfortran/generated/any_l16.c branches/gcc-4_3-branch/libgfortran/generated/any_l2.c branches/gcc-4_3-branch/libgfortran/generated/any_l4.c branches/gcc-4_3-branch/libgfortran/generated/any_l8.c branches/gcc-4_3-branch/libgfortran/generated/count_16_l.c branches/gcc-4_3-branch/libgfortran/generated/count_1_l.c branches/gcc-4_3-branch/libgfortran/generated/count_2_l.c branches/gcc-4_3-branch/libgfortran/generated/count_4_l.c branches/gcc-4_3-branch/libgfortran/generated/count_8_l.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_i1.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_i16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_i2.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_i4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_i8.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_r10.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_r16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_r4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_16_r8.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_i1.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_i16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_i2.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_i4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_i8.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_r10.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_r16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_r4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_4_r8.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_i1.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_i16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_i2.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_i4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_i8.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_r10.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_r16.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_r4.c branches/gcc-4_3-branch/libgfortran/generated/maxloc1_8_r8.c branches/gcc-4_3-branch/libgfortran/generated/maxval_i1.c branches/gcc-4_3-branch/libgfortran/generated/maxval_i16.c branches/gcc-4_3-branch/libgfortran/generated/maxval_i2.c branches/gcc-4_3-branch/libgfortran/generated/maxval_i4.c branches/gcc-4_3-branch/libgfortran/generated/maxval_i8.c branches/gcc-4_3-branch/libgfortran/generated/maxval_r10.c branches/gcc-4_3-branch/libgfortran/generated/maxval_r16.c branches/gcc-4_3-branch/libgfortran/generated/maxval_r4.c branches/gcc-4_3-branch/libgfortran/generated/maxval_r8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_i1.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_i16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_i2.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_i4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_i8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_r10.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_r16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_r4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_16_r8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_i1.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_i16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_i2.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_i4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_i8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_r10.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_r16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_r4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_4_r8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_i1.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_i16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_i2.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_i4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_i8.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_r10.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_r16.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_r4.c branches/gcc-4_3-branch/libgfortran/generated/minloc1_8_r8.c branches/gcc-4_3-branch/libgfortran/generated/minval_i1.c branches/gcc-4_3-branch/libgfortran/generated/minval_i16.c branches/gcc-4_3-branch/libgfortran/generated/minval_i2.c branches/gcc-4_3-branch/libgfortran/generated/minval_i4.c branches/gcc-4_3-branch/libgfortran/generated/minval_i8.c branches/gcc-4_3-branch/libgfortran/generated/minval_r10.c branches/gcc-4_3-branch/libgfortran/generated/minval_r16.c branches/gcc-4_3-branch/libgfortran/generated/minval_r4.c branches/gcc-4_3-branch/libgfortran/generated/minval_r8.c branches/gcc-4_3-branch/libgfortran/generated/product_c10.c branches/gcc-4_3-branch/libgfortran/generated/product_c16.c branches/gcc-4_3-branch/libgfortran/generated/product_c4.c branches/gcc-4_3-branch/libgfortran/generated/product_c8.c branches/gcc-4_3-branch/libgfortran/generated/product_i1.c branches/gcc-4_3-branch/libgfortran/generated/product_i16.c branches/gcc-4_3-branch/libgfortran/generated/product_i2.c branches/gcc-4_3-branch/libgfortran/generated/product_i4.c branches/gcc-4_3-branch/libgfortran/generated/product_i8.c branches/gcc-4_3-branch/libgfortran/generated/product_r10.c branches/gcc-4_3-branch/libgfortran/generated/product_r16.c branches/gcc-4_3-branch/libgfortran/generated/product_r4.c branches/gcc-4_3-branch/libgfortran/generated/product_r8.c branches/gcc-4_3-branch/libgfortran/generated/sum_c10.c branches/gcc-4_3-branch/libgfortran/generated/sum_c16.c branches/gcc-4_3-branch/libgfortran/generated/sum_c4.c branches/gcc-4_3-branch/libgfortran/generated/sum_c8.c branches/gcc-4_3-branch/libgfortran/generated/sum_i1.c branches/gcc-4_3-branch/libgfortran/generated/sum_i16.c branches/gcc-4_3-branch/libgfortran/generated/sum_i2.c branches/gcc-4_3-branch/libgfortran/generated/sum_i4.c branches/gcc-4_3-branch/libgfortran/generated/sum_i8.c branches/gcc-4_3-branch/libgfortran/generated/sum_r10.c branches/gcc-4_3-branch/libgfortran/generated/sum_r16.c branches/gcc-4_3-branch/libgfortran/generated/sum_r4.c branches/gcc-4_3-branch/libgfortran/generated/sum_r8.c branches/gcc-4_3-branch/libgfortran/intrinsics/pack_generic.c branches/gcc-4_3-branch/libgfortran/m4/ifunction.m4 branches/gcc-4_3-branch/libgfortran/m4/ifunction_logical.m4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35995