public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays
@ 2011-06-20 19:51 Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:05 ` [Bug fortran/49479] " Joost.VandeVondele at pci dot uzh.ch
` (10 more replies)
0 siblings, 11 replies; 12+ messages in thread
From: Joost.VandeVondele at pci dot uzh.ch @ 2011-06-20 19:51 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
Summary: [4.6/4.7 Regression] reshape / optionals / zero sized
arrays
Product: gcc
Version: 4.6.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: Joost.VandeVondele@pci.uzh.ch
Currently, CP2K seems miscompiled with the 4.6 and 4.7 branches. The following
testcase is likely the issue:
MODULE M1
IMPLICIT NONE
CONTAINS
SUBROUTINE S1(data)
INTEGER, DIMENSION(:), INTENT(IN), &
OPTIONAL :: DATA
IF (PRESENT(data)) WRITE(6,*) SIZE(data)
END SUBROUTINE
SUBROUTINE S2(N)
INTEGER :: N
INTEGER, ALLOCATABLE, DIMENSION(:, :) :: blki
ALLOCATE(blki(3,N))
blki=0
CALL S1(RESHAPE(blki,(/3*N/)))
END SUBROUTINE
END MODULE
USE M1
CALL S2(0)
END
whereas gfortran 4.5 prints correctly 0, 4.6/4.7 print nothing.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
@ 2011-06-20 20:05 ` Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:17 ` dominiq at lps dot ens.fr
` (9 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: Joost.VandeVondele at pci dot uzh.ch @ 2011-06-20 20:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #1 from Joost VandeVondele <Joost.VandeVondele at pci dot uzh.ch> 2011-06-20 20:04:47 UTC ---
the difference (I think) seems to be in the present check that has become
if (data != 0B && (integer(kind=4)[0:] * restrict) data->data != 0B)
instead of the original
if (data != 0B)
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:05 ` [Bug fortran/49479] " Joost.VandeVondele at pci dot uzh.ch
@ 2011-06-20 20:17 ` dominiq at lps dot ens.fr
2011-06-20 21:39 ` burnus at gcc dot gnu.org
` (8 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: dominiq at lps dot ens.fr @ 2011-06-20 20:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011.06.20 20:16:50
Ever Confirmed|0 |1
--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-06-20 20:16:50 UTC ---
Revision 162456 is OK, 163718 is not.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:05 ` [Bug fortran/49479] " Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:17 ` dominiq at lps dot ens.fr
@ 2011-06-20 21:39 ` burnus at gcc dot gnu.org
2011-06-21 8:59 ` burnus at gcc dot gnu.org
` (7 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-06-20 21:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
CC| |burnus at gcc dot gnu.org
Target Milestone|--- |4.6.2
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-06-20 21:39:28 UTC ---
There seems to be a bug in the implementation of Fortran 2008's new feature:
"A null pointer or unallocated allocatable can be used to denote an absent
nonallocatable nonpointer optional argument."
That check has been added in Rev 163263 on 2010-08-15.
However, I am not sure that the bug is in the new code - it could also be a
RESHAPE bug (cf. PR 49324 for another reshape bug). I think gfortran's
convention is - and also TR 29113 require that the addr_expr is not NULL if the
variable is allocated - even if it is zero sized. However, I need to recheck
and maybe also other library functions have this issue.
Workaround: -std=f2003.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (2 preceding siblings ...)
2011-06-20 21:39 ` burnus at gcc dot gnu.org
@ 2011-06-21 8:59 ` burnus at gcc dot gnu.org
2011-06-21 9:30 ` burnus at gcc dot gnu.org
` (6 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-06-21 8:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-06-21 08:58:31 UTC ---
(In reply to comment #3)
> I think gfortran's convention is - and also TR 29113 requires - that the
> addr_expr is not NULL if the variable is allocated - even if it is zero sized.
The TR 29113 draft (Interop ML version) has (5.2.3 CFI_cdesc_t)
ftp://ftp.nag.co.uk/sc22wg5/N1851-N1900/N1854.pdf
"void * base addr; If the object is an unallocated allocatable or a pointer
that is disassociated, the value is NULL. If the object has zero size, the
value is not NULL but is otherwise processor-dependent. Otherwise [...]"
And trans.c has for gfc_call_malloc:
/* Call malloc to allocate size bytes of memory, with special conditions:
+ if size == 0, return a malloced area of size 1,
If one looks at RESHAPE in the library:
http://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgfortran/intrinsics/reshape_generic.c;hb=HEAD
one sees:
86 if (ret->data == NULL)
87 {
88 rs = 1;
89 for (n = 0; n < rdim; n++)
90 {
91 rex = shape_data[n];
93 GFC_DIMENSION_SET(ret->dim[n],0,rex - 1,rs);
95 rs *= rex;
96 }
98 ret->data = internal_malloc_size ( rs * size );
Thus, if shape_data[n] == 0 -- which is here the case --, "rs" == 0 and thus
one calls malloc with zero size. POSIX states:
"If size is 0, either a null pointer or a unique pointer that can be
successfully passed to free() shall be returned."
Hence, the "rs*size" should be replaced by "MAX(1, rs*size)".
I think other intrinsics will have the same problem.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (3 preceding siblings ...)
2011-06-21 8:59 ` burnus at gcc dot gnu.org
@ 2011-06-21 9:30 ` burnus at gcc dot gnu.org
2011-06-27 19:02 ` tkoenig at gcc dot gnu.org
` (5 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-06-21 9:30 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #5 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-06-21 09:30:32 UTC ---
Actually, thinking about it: "RESHAPE(allocatable_array, shape)" is *not*
allocatable.
trans-expr.c has:
147 if (!sym->attr.pointer && !sym->attr.allocatable
148 && sym->as && sym->as->type == AS_ASSUMED_SHAPE
149 && (gfc_option.allow_std & GFC_STD_F2008) != 0)
One probably needs to check the actual argument, i.e. gfc_expr_attr(actual)
with allocatable or pointer attribute - or type being C_PTR (including
C_NULL_PTR).
For the latter:
expr->ts.type == BT_DERIVED && expr->ts.u.derived
&& expr->ts.u.derived->attr.is_iso_c
&& ??? (some check for ISOCBINDING_PTR)
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (4 preceding siblings ...)
2011-06-21 9:30 ` burnus at gcc dot gnu.org
@ 2011-06-27 19:02 ` tkoenig at gcc dot gnu.org
2011-06-28 18:59 ` tkoenig at gcc dot gnu.org
` (4 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-06-27 19:02 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #6 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-06-27 19:02:12 UTC ---
A patch suggested by comment #4 fixes the failure.
Regression-testing.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (5 preceding siblings ...)
2011-06-27 19:02 ` tkoenig at gcc dot gnu.org
@ 2011-06-28 18:59 ` tkoenig at gcc dot gnu.org
2011-07-06 18:51 ` tkoenig at gcc dot gnu.org
` (3 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-06-28 18:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #7 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-06-28 18:59:06 UTC ---
Author: tkoenig
Date: Tue Jun 28 18:59:04 2011
New Revision: 175594
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175594
Log:
2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* m4/reshape.m4: If source allocation is smaller than one, set it
to one.
* intrinsics/reshape_generic.c: Likewise.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_i4.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* gfortran.dg/reshape_zerosize_3.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/reshape_c10.c
trunk/libgfortran/generated/reshape_c16.c
trunk/libgfortran/generated/reshape_c4.c
trunk/libgfortran/generated/reshape_c8.c
trunk/libgfortran/generated/reshape_i16.c
trunk/libgfortran/generated/reshape_i4.c
trunk/libgfortran/generated/reshape_i8.c
trunk/libgfortran/generated/reshape_r10.c
trunk/libgfortran/generated/reshape_r16.c
trunk/libgfortran/generated/reshape_r4.c
trunk/libgfortran/generated/reshape_r8.c
trunk/libgfortran/intrinsics/reshape_generic.c
trunk/libgfortran/m4/reshape.m4
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (6 preceding siblings ...)
2011-06-28 18:59 ` tkoenig at gcc dot gnu.org
@ 2011-07-06 18:51 ` tkoenig at gcc dot gnu.org
2011-07-06 18:52 ` tkoenig at gcc dot gnu.org
` (2 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-07-06 18:51 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #8 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-07-06 18:50:50 UTC ---
Author: tkoenig
Date: Wed Jul 6 18:50:46 2011
New Revision: 175929
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175929
Log:
2011-07-06 Thomas Koenig <tkoenig@gcc.gnu.org>
Partial backport from trunk:
PR fortran/49479
* runtime/memory.c: If size is zero, allocate a single byte.
* m4/eoshift1.m4: Remove double allocation.
* m4/eoshift3.m4: Likewise.
* generated/eoshift1_4.c: Regenerated.
* generated/eoshift1_8.c: Regenerated.
* generated/eoshift1_16.c: Regenerated.
* generated/eoshift3_4.c: Regenerated.
* generated/eoshift3_8.c: Regenerated.
* generated/eoshift3_16.c: Regenerated.
2011-07-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* gfortran.dg/reshape_zerosize_3.f90: New test case.
Added:
branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90
Modified:
branches/gcc-4_6-branch/gcc/testsuite/ChangeLog
branches/gcc-4_6-branch/libgfortran/ChangeLog
branches/gcc-4_6-branch/libgfortran/generated/eoshift1_16.c
branches/gcc-4_6-branch/libgfortran/generated/eoshift1_4.c
branches/gcc-4_6-branch/libgfortran/generated/eoshift1_8.c
branches/gcc-4_6-branch/libgfortran/generated/eoshift3_16.c
branches/gcc-4_6-branch/libgfortran/generated/eoshift3_4.c
branches/gcc-4_6-branch/libgfortran/generated/eoshift3_8.c
branches/gcc-4_6-branch/libgfortran/m4/eoshift1.m4
branches/gcc-4_6-branch/libgfortran/m4/eoshift3.m4
branches/gcc-4_6-branch/libgfortran/runtime/memory.c
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (7 preceding siblings ...)
2011-07-06 18:51 ` tkoenig at gcc dot gnu.org
@ 2011-07-06 18:52 ` tkoenig at gcc dot gnu.org
2011-09-10 14:46 ` tkoenig at gcc dot gnu.org
2011-09-11 9:37 ` tkoenig at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-07-06 18:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
Thomas Koenig <tkoenig at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #9 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-07-06 18:51:43 UTC ---
Fixed on trunk and 4.6, closing.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (8 preceding siblings ...)
2011-07-06 18:52 ` tkoenig at gcc dot gnu.org
@ 2011-09-10 14:46 ` tkoenig at gcc dot gnu.org
2011-09-11 9:37 ` tkoenig at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-09-10 14:46 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #10 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-09-10 14:07:01 UTC ---
Author: tkoenig
Date: Sat Sep 10 14:06:57 2011
New Revision: 178748
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=178748
Log:
2011-09-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* generated/m4/ifunction.m4: Always call internal_malloc_size
even when there is a zero-sized return array.
* generated/generated/maxloc1_16_i16.c: Regenerated.
* generated/generated/maxloc1_16_i1.c: Regenerated.
* generated/generated/maxloc1_16_i2.c: Regenerated.
* generated/generated/maxloc1_16_i4.c: Regenerated.
* generated/generated/maxloc1_16_i8.c: Regenerated.
* generated/generated/maxloc1_16_r10.c: Regenerated.
* generated/generated/maxloc1_16_r16.c: Regenerated.
* generated/generated/maxloc1_16_r4.c: Regenerated.
* generated/generated/maxloc1_16_r8.c: Regenerated.
* generated/generated/maxloc1_4_i16.c: Regenerated.
* generated/generated/maxloc1_4_i1.c: Regenerated.
* generated/generated/maxloc1_4_i2.c: Regenerated.
* generated/generated/maxloc1_4_i4.c: Regenerated.
* generated/generated/maxloc1_4_i8.c: Regenerated.
* generated/generated/maxloc1_4_r10.c: Regenerated.
* generated/generated/maxloc1_4_r16.c: Regenerated.
* generated/generated/maxloc1_4_r4.c: Regenerated.
* generated/generated/maxloc1_4_r8.c: Regenerated.
* generated/generated/maxloc1_8_i16.c: Regenerated.
* generated/generated/maxloc1_8_i1.c: Regenerated.
* generated/generated/maxloc1_8_i2.c: Regenerated.
* generated/generated/maxloc1_8_i4.c: Regenerated.
* generated/generated/maxloc1_8_i8.c: Regenerated.
* generated/generated/maxloc1_8_r10.c: Regenerated.
* generated/generated/maxloc1_8_r16.c: Regenerated.
* generated/generated/maxloc1_8_r4.c: Regenerated.
* generated/generated/maxloc1_8_r8.c: Regenerated.
* generated/generated/maxval_i16.c: Regenerated.
* generated/generated/maxval_i1.c: Regenerated.
* generated/generated/maxval_i2.c: Regenerated.
* generated/generated/maxval_i4.c: Regenerated.
* generated/generated/maxval_i8.c: Regenerated.
* generated/generated/maxval_r10.c: Regenerated.
* generated/generated/maxval_r16.c: Regenerated.
* generated/generated/maxval_r4.c: Regenerated.
* generated/generated/maxval_r8.c: Regenerated.
* generated/generated/minloc1_16_i16.c: Regenerated.
* generated/generated/minloc1_16_i1.c: Regenerated.
* generated/generated/minloc1_16_i2.c: Regenerated.
* generated/generated/minloc1_16_i4.c: Regenerated.
* generated/generated/minloc1_16_i8.c: Regenerated.
* generated/generated/minloc1_16_r10.c: Regenerated.
* generated/generated/minloc1_16_r16.c: Regenerated.
* generated/generated/minloc1_16_r4.c: Regenerated.
* generated/generated/minloc1_16_r8.c: Regenerated.
* generated/generated/minloc1_4_i16.c: Regenerated.
* generated/generated/minloc1_4_i1.c: Regenerated.
* generated/generated/minloc1_4_i2.c: Regenerated.
* generated/generated/minloc1_4_i4.c: Regenerated.
* generated/generated/minloc1_4_i8.c: Regenerated.
* generated/generated/minloc1_4_r10.c: Regenerated.
* generated/generated/minloc1_4_r16.c: Regenerated.
* generated/generated/minloc1_4_r4.c: Regenerated.
* generated/generated/minloc1_4_r8.c: Regenerated.
* generated/generated/minloc1_8_i16.c: Regenerated.
* generated/generated/minloc1_8_i1.c: Regenerated.
* generated/generated/minloc1_8_i2.c: Regenerated.
* generated/generated/minloc1_8_i4.c: Regenerated.
* generated/generated/minloc1_8_i8.c: Regenerated.
* generated/generated/minloc1_8_r10.c: Regenerated.
* generated/generated/minloc1_8_r16.c: Regenerated.
* generated/generated/minloc1_8_r4.c: Regenerated.
* generated/generated/minloc1_8_r8.c: Regenerated.
* generated/generated/minval_i16.c: Regenerated.
* generated/generated/minval_i1.c: Regenerated.
* generated/generated/minval_i2.c: Regenerated.
* generated/generated/minval_i4.c: Regenerated.
* generated/generated/minval_i8.c: Regenerated.
* generated/generated/minval_r10.c: Regenerated.
* generated/generated/minval_r16.c: Regenerated.
* generated/generated/minval_r4.c: Regenerated.
* generated/generated/minval_r8.c: Regenerated.
* generated/generated/product_c10.c: Regenerated.
* generated/generated/product_c16.c: Regenerated.
* generated/generated/product_c4.c: Regenerated.
* generated/generated/product_c8.c: Regenerated.
* generated/generated/product_i16.c: Regenerated.
* generated/generated/product_i1.c: Regenerated.
* generated/generated/product_i2.c: Regenerated.
* generated/generated/product_i4.c: Regenerated.
* generated/generated/product_i8.c: Regenerated.
* generated/generated/product_r10.c: Regenerated.
* generated/generated/product_r16.c: Regenerated.
* generated/generated/product_r4.c: Regenerated.
* generated/generated/product_r8.c: Regenerated.
* generated/generated/sum_c10.c: Regenerated.
* generated/generated/sum_c16.c: Regenerated.
* generated/generated/sum_c4.c: Regenerated.
* generated/generated/sum_c8.c: Regenerated.
* generated/generated/sum_i16.c: Regenerated.
* generated/generated/sum_i1.c: Regenerated.
* generated/generated/sum_i2.c: Regenerated.
* generated/generated/sum_i4.c: Regenerated.
* generated/generated/sum_i8.c: Regenerated.
* generated/generated/sum_r10.c: Regenerated.
* generated/generated/sum_r16.c: Regenerated.
* generated/generated/sum_r4.c: Regenerated.
* generated/generated/sum_r8.c: Regenerated.
Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/maxloc1_16_i1.c
trunk/libgfortran/generated/maxloc1_16_i16.c
trunk/libgfortran/generated/maxloc1_16_i2.c
trunk/libgfortran/generated/maxloc1_16_i4.c
trunk/libgfortran/generated/maxloc1_16_i8.c
trunk/libgfortran/generated/maxloc1_16_r10.c
trunk/libgfortran/generated/maxloc1_16_r16.c
trunk/libgfortran/generated/maxloc1_16_r4.c
trunk/libgfortran/generated/maxloc1_16_r8.c
trunk/libgfortran/generated/maxloc1_4_i1.c
trunk/libgfortran/generated/maxloc1_4_i16.c
trunk/libgfortran/generated/maxloc1_4_i2.c
trunk/libgfortran/generated/maxloc1_4_i4.c
trunk/libgfortran/generated/maxloc1_4_i8.c
trunk/libgfortran/generated/maxloc1_4_r10.c
trunk/libgfortran/generated/maxloc1_4_r16.c
trunk/libgfortran/generated/maxloc1_4_r4.c
trunk/libgfortran/generated/maxloc1_4_r8.c
trunk/libgfortran/generated/maxloc1_8_i1.c
trunk/libgfortran/generated/maxloc1_8_i16.c
trunk/libgfortran/generated/maxloc1_8_i2.c
trunk/libgfortran/generated/maxloc1_8_i4.c
trunk/libgfortran/generated/maxloc1_8_i8.c
trunk/libgfortran/generated/maxloc1_8_r10.c
trunk/libgfortran/generated/maxloc1_8_r16.c
trunk/libgfortran/generated/maxloc1_8_r4.c
trunk/libgfortran/generated/maxloc1_8_r8.c
trunk/libgfortran/generated/maxval_i1.c
trunk/libgfortran/generated/maxval_i16.c
trunk/libgfortran/generated/maxval_i2.c
trunk/libgfortran/generated/maxval_i4.c
trunk/libgfortran/generated/maxval_i8.c
trunk/libgfortran/generated/maxval_r10.c
trunk/libgfortran/generated/maxval_r16.c
trunk/libgfortran/generated/maxval_r4.c
trunk/libgfortran/generated/maxval_r8.c
trunk/libgfortran/generated/minloc1_16_i1.c
trunk/libgfortran/generated/minloc1_16_i16.c
trunk/libgfortran/generated/minloc1_16_i2.c
trunk/libgfortran/generated/minloc1_16_i4.c
trunk/libgfortran/generated/minloc1_16_i8.c
trunk/libgfortran/generated/minloc1_16_r10.c
trunk/libgfortran/generated/minloc1_16_r16.c
trunk/libgfortran/generated/minloc1_16_r4.c
trunk/libgfortran/generated/minloc1_16_r8.c
trunk/libgfortran/generated/minloc1_4_i1.c
trunk/libgfortran/generated/minloc1_4_i16.c
trunk/libgfortran/generated/minloc1_4_i2.c
trunk/libgfortran/generated/minloc1_4_i4.c
trunk/libgfortran/generated/minloc1_4_i8.c
trunk/libgfortran/generated/minloc1_4_r10.c
trunk/libgfortran/generated/minloc1_4_r16.c
trunk/libgfortran/generated/minloc1_4_r4.c
trunk/libgfortran/generated/minloc1_4_r8.c
trunk/libgfortran/generated/minloc1_8_i1.c
trunk/libgfortran/generated/minloc1_8_i16.c
trunk/libgfortran/generated/minloc1_8_i2.c
trunk/libgfortran/generated/minloc1_8_i4.c
trunk/libgfortran/generated/minloc1_8_i8.c
trunk/libgfortran/generated/minloc1_8_r10.c
trunk/libgfortran/generated/minloc1_8_r16.c
trunk/libgfortran/generated/minloc1_8_r4.c
trunk/libgfortran/generated/minloc1_8_r8.c
trunk/libgfortran/generated/minval_i1.c
trunk/libgfortran/generated/minval_i16.c
trunk/libgfortran/generated/minval_i2.c
trunk/libgfortran/generated/minval_i4.c
trunk/libgfortran/generated/minval_i8.c
trunk/libgfortran/generated/minval_r10.c
trunk/libgfortran/generated/minval_r16.c
trunk/libgfortran/generated/minval_r4.c
trunk/libgfortran/generated/minval_r8.c
trunk/libgfortran/generated/product_c10.c
trunk/libgfortran/generated/product_c16.c
trunk/libgfortran/generated/product_c4.c
trunk/libgfortran/generated/product_c8.c
trunk/libgfortran/generated/product_i1.c
trunk/libgfortran/generated/product_i16.c
trunk/libgfortran/generated/product_i2.c
trunk/libgfortran/generated/product_i4.c
trunk/libgfortran/generated/product_i8.c
trunk/libgfortran/generated/product_r10.c
trunk/libgfortran/generated/product_r16.c
trunk/libgfortran/generated/product_r4.c
trunk/libgfortran/generated/product_r8.c
trunk/libgfortran/generated/sum_c10.c
trunk/libgfortran/generated/sum_c16.c
trunk/libgfortran/generated/sum_c4.c
trunk/libgfortran/generated/sum_c8.c
trunk/libgfortran/generated/sum_i1.c
trunk/libgfortran/generated/sum_i16.c
trunk/libgfortran/generated/sum_i2.c
trunk/libgfortran/generated/sum_i4.c
trunk/libgfortran/generated/sum_i8.c
trunk/libgfortran/generated/sum_r10.c
trunk/libgfortran/generated/sum_r16.c
trunk/libgfortran/generated/sum_r4.c
trunk/libgfortran/generated/sum_r8.c
trunk/libgfortran/m4/ifunction.m4
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug fortran/49479] [4.6/4.7 Regression] reshape / optionals / zero sized arrays
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
` (9 preceding siblings ...)
2011-09-10 14:46 ` tkoenig at gcc dot gnu.org
@ 2011-09-11 9:37 ` tkoenig at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2011-09-11 9:37 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49479
--- Comment #11 from Thomas Koenig <tkoenig at gcc dot gnu.org> 2011-09-11 09:16:08 UTC ---
Author: tkoenig
Date: Sun Sep 11 09:16:03 2011
New Revision: 178757
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=178757
Log:
2011-09-11 Thomas Koenig <tkoenig@gcc.gnu.org>
Backport fron trunk
PR fortran/49479
* generated/m4/ifunction.m4: Always call internal_malloc_size
even when there is a zero-sized return array.
* generated/generated/maxloc1_16_i16.c: Regenerated.
* generated/generated/maxloc1_16_i1.c: Regenerated.
* generated/generated/maxloc1_16_i2.c: Regenerated.
* generated/generated/maxloc1_16_i4.c: Regenerated.
* generated/generated/maxloc1_16_i8.c: Regenerated.
* generated/generated/maxloc1_16_r10.c: Regenerated.
* generated/generated/maxloc1_16_r16.c: Regenerated.
* generated/generated/maxloc1_16_r4.c: Regenerated.
* generated/generated/maxloc1_16_r8.c: Regenerated.
* generated/generated/maxloc1_4_i16.c: Regenerated.
* generated/generated/maxloc1_4_i1.c: Regenerated.
* generated/generated/maxloc1_4_i2.c: Regenerated.
* generated/generated/maxloc1_4_i4.c: Regenerated.
* generated/generated/maxloc1_4_i8.c: Regenerated.
* generated/generated/maxloc1_4_r10.c: Regenerated.
* generated/generated/maxloc1_4_r16.c: Regenerated.
* generated/generated/maxloc1_4_r4.c: Regenerated.
* generated/generated/maxloc1_4_r8.c: Regenerated.
* generated/generated/maxloc1_8_i16.c: Regenerated.
* generated/generated/maxloc1_8_i1.c: Regenerated.
* generated/generated/maxloc1_8_i2.c: Regenerated.
* generated/generated/maxloc1_8_i4.c: Regenerated.
* generated/generated/maxloc1_8_i8.c: Regenerated.
* generated/generated/maxloc1_8_r10.c: Regenerated.
* generated/generated/maxloc1_8_r16.c: Regenerated.
* generated/generated/maxloc1_8_r4.c: Regenerated.
* generated/generated/maxloc1_8_r8.c: Regenerated.
* generated/generated/maxval_i16.c: Regenerated.
* generated/generated/maxval_i1.c: Regenerated.
* generated/generated/maxval_i2.c: Regenerated.
* generated/generated/maxval_i4.c: Regenerated.
* generated/generated/maxval_i8.c: Regenerated.
* generated/generated/maxval_r10.c: Regenerated.
* generated/generated/maxval_r16.c: Regenerated.
* generated/generated/maxval_r4.c: Regenerated.
* generated/generated/maxval_r8.c: Regenerated.
* generated/generated/minloc1_16_i16.c: Regenerated.
* generated/generated/minloc1_16_i1.c: Regenerated.
* generated/generated/minloc1_16_i2.c: Regenerated.
* generated/generated/minloc1_16_i4.c: Regenerated.
* generated/generated/minloc1_16_i8.c: Regenerated.
* generated/generated/minloc1_16_r10.c: Regenerated.
* generated/generated/minloc1_16_r16.c: Regenerated.
* generated/generated/minloc1_16_r4.c: Regenerated.
* generated/generated/minloc1_16_r8.c: Regenerated.
* generated/generated/minloc1_4_i16.c: Regenerated.
* generated/generated/minloc1_4_i1.c: Regenerated.
* generated/generated/minloc1_4_i2.c: Regenerated.
* generated/generated/minloc1_4_i4.c: Regenerated.
* generated/generated/minloc1_4_i8.c: Regenerated.
* generated/generated/minloc1_4_r10.c: Regenerated.
* generated/generated/minloc1_4_r16.c: Regenerated.
* generated/generated/minloc1_4_r4.c: Regenerated.
* generated/generated/minloc1_4_r8.c: Regenerated.
* generated/generated/minloc1_8_i16.c: Regenerated.
* generated/generated/minloc1_8_i1.c: Regenerated.
* generated/generated/minloc1_8_i2.c: Regenerated.
* generated/generated/minloc1_8_i4.c: Regenerated.
* generated/generated/minloc1_8_i8.c: Regenerated.
* generated/generated/minloc1_8_r10.c: Regenerated.
* generated/generated/minloc1_8_r16.c: Regenerated.
* generated/generated/minloc1_8_r4.c: Regenerated.
* generated/generated/minloc1_8_r8.c: Regenerated.
* generated/generated/minval_i16.c: Regenerated.
* generated/generated/minval_i1.c: Regenerated.
* generated/generated/minval_i2.c: Regenerated.
* generated/generated/minval_i4.c: Regenerated.
* generated/generated/minval_i8.c: Regenerated.
* generated/generated/minval_r10.c: Regenerated.
* generated/generated/minval_r16.c: Regenerated.
* generated/generated/minval_r4.c: Regenerated.
* generated/generated/minval_r8.c: Regenerated.
* generated/generated/product_c10.c: Regenerated.
* generated/generated/product_c16.c: Regenerated.
* generated/generated/product_c4.c: Regenerated.
* generated/generated/product_c8.c: Regenerated.
* generated/generated/product_i16.c: Regenerated.
* generated/generated/product_i1.c: Regenerated.
* generated/generated/product_i2.c: Regenerated.
* generated/generated/product_i4.c: Regenerated.
* generated/generated/product_i8.c: Regenerated.
* generated/generated/product_r10.c: Regenerated.
* generated/generated/product_r16.c: Regenerated.
* generated/generated/product_r4.c: Regenerated.
* generated/generated/product_r8.c: Regenerated.
* generated/generated/sum_c10.c: Regenerated.
* generated/generated/sum_c16.c: Regenerated.
* generated/generated/sum_c4.c: Regenerated.
* generated/generated/sum_c8.c: Regenerated.
* generated/generated/sum_i16.c: Regenerated.
* generated/generated/sum_i1.c: Regenerated.
* generated/generated/sum_i2.c: Regenerated.
* generated/generated/sum_i4.c: Regenerated.
* generated/generated/sum_i8.c: Regenerated.
* generated/generated/sum_r10.c: Regenerated.
* generated/generated/sum_r16.c: Regenerated.
* generated/generated/sum_r4.c: Regenerated.
* generated/generated/sum_r8.c: Regenerated.
Modified:
branches/gcc-4_6-branch/libgfortran/ChangeLog
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_i1.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_i16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_i2.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_i4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_i8.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_r10.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_r16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_r4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_16_r8.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_i1.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_i16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_i2.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_i4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_i8.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_r10.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_r16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_r4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_4_r8.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_i1.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_i16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_i2.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_i4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_i8.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_r10.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_r16.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_r4.c
branches/gcc-4_6-branch/libgfortran/generated/maxloc1_8_r8.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_i1.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_i16.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_i2.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_i4.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_i8.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_r10.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_r16.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_r4.c
branches/gcc-4_6-branch/libgfortran/generated/maxval_r8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_i1.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_i16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_i2.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_i4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_i8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_r10.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_r16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_r4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_16_r8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_i1.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_i16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_i2.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_i4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_i8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_r10.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_r16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_r4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_4_r8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_i1.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_i16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_i2.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_i4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_i8.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_r10.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_r16.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_r4.c
branches/gcc-4_6-branch/libgfortran/generated/minloc1_8_r8.c
branches/gcc-4_6-branch/libgfortran/generated/minval_i1.c
branches/gcc-4_6-branch/libgfortran/generated/minval_i16.c
branches/gcc-4_6-branch/libgfortran/generated/minval_i2.c
branches/gcc-4_6-branch/libgfortran/generated/minval_i4.c
branches/gcc-4_6-branch/libgfortran/generated/minval_i8.c
branches/gcc-4_6-branch/libgfortran/generated/minval_r10.c
branches/gcc-4_6-branch/libgfortran/generated/minval_r16.c
branches/gcc-4_6-branch/libgfortran/generated/minval_r4.c
branches/gcc-4_6-branch/libgfortran/generated/minval_r8.c
branches/gcc-4_6-branch/libgfortran/generated/product_c10.c
branches/gcc-4_6-branch/libgfortran/generated/product_c16.c
branches/gcc-4_6-branch/libgfortran/generated/product_c4.c
branches/gcc-4_6-branch/libgfortran/generated/product_c8.c
branches/gcc-4_6-branch/libgfortran/generated/product_i1.c
branches/gcc-4_6-branch/libgfortran/generated/product_i16.c
branches/gcc-4_6-branch/libgfortran/generated/product_i2.c
branches/gcc-4_6-branch/libgfortran/generated/product_i4.c
branches/gcc-4_6-branch/libgfortran/generated/product_i8.c
branches/gcc-4_6-branch/libgfortran/generated/product_r10.c
branches/gcc-4_6-branch/libgfortran/generated/product_r16.c
branches/gcc-4_6-branch/libgfortran/generated/product_r4.c
branches/gcc-4_6-branch/libgfortran/generated/product_r8.c
branches/gcc-4_6-branch/libgfortran/generated/sum_c10.c
branches/gcc-4_6-branch/libgfortran/generated/sum_c16.c
branches/gcc-4_6-branch/libgfortran/generated/sum_c4.c
branches/gcc-4_6-branch/libgfortran/generated/sum_c8.c
branches/gcc-4_6-branch/libgfortran/generated/sum_i1.c
branches/gcc-4_6-branch/libgfortran/generated/sum_i16.c
branches/gcc-4_6-branch/libgfortran/generated/sum_i2.c
branches/gcc-4_6-branch/libgfortran/generated/sum_i4.c
branches/gcc-4_6-branch/libgfortran/generated/sum_i8.c
branches/gcc-4_6-branch/libgfortran/generated/sum_r10.c
branches/gcc-4_6-branch/libgfortran/generated/sum_r16.c
branches/gcc-4_6-branch/libgfortran/generated/sum_r4.c
branches/gcc-4_6-branch/libgfortran/generated/sum_r8.c
branches/gcc-4_6-branch/libgfortran/m4/ifunction.m4
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2011-09-11 9:16 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-06-20 19:51 [Bug fortran/49479] New: [4.6/4.7 Regression] reshape / optionals / zero sized arrays Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:05 ` [Bug fortran/49479] " Joost.VandeVondele at pci dot uzh.ch
2011-06-20 20:17 ` dominiq at lps dot ens.fr
2011-06-20 21:39 ` burnus at gcc dot gnu.org
2011-06-21 8:59 ` burnus at gcc dot gnu.org
2011-06-21 9:30 ` burnus at gcc dot gnu.org
2011-06-27 19:02 ` tkoenig at gcc dot gnu.org
2011-06-28 18:59 ` tkoenig at gcc dot gnu.org
2011-07-06 18:51 ` tkoenig at gcc dot gnu.org
2011-07-06 18:52 ` tkoenig at gcc dot gnu.org
2011-09-10 14:46 ` tkoenig at gcc dot gnu.org
2011-09-11 9:37 ` tkoenig at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).