This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/35995] ANY, ALL, and COUNT errors for zero sized sections



------- 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  <tkoenig@gcc.gnu.org>

        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  <tkoenig@gcc.gnu.org>

        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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]