Summary: | [4.3, 4.4 regression] wrong answers with array constructor argument to IEOR | ||
---|---|---|---|
Product: | gcc | Reporter: | Dick Hendrickson <dick.hendrickson> |
Component: | fortran | Assignee: | Paul Thomas <pault> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | gcc-bugs, tkoenig |
Priority: | P4 | Keywords: | wrong-code |
Version: | 4.4.0 | ||
Target Milestone: | 4.3.1 | ||
Host: | Target: | ||
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2008-04-19 08:36:54 |
Description
Dick Hendrickson
2008-04-15 15:51:02 UTC
Confirmed, a regression: $ gfortran foo.f $ ./a.out 1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1 8 10 4 2 0 2 4 10 8*** 11 11 11 3 3 3 3 11 11 11 $ ifort foo.f $ ./a.out 1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1 11 11 11 3 3 3 3 11 11 11 11 11 11 3 3 3 3 11 11 11 $ gfortran-4.2 foo.f $ ./a.out 1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1 11 11 11 3 3 3 3 11 11 11 11 11 11 3 3 3 3 11 11 11 $ gfortran-4.3 -static foo.f $ ./a.out 1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1 8 10 4 2 0 2 4 10 8 10 11 11 11 3 3 3 3 11 11 11 I have started a regression hunt on this one. If any one finds the problem, let me know, the hunt could take a while. (In reply to comment #2) > I have started a regression hunt on this one. If any one finds the problem, > let me know, the hunt could take a while. > Jerry, In fixing PR35946, I have fixed this fella too:) Call off the hounds! Cheers Paul Subject: Bug 35947 Author: pault Date: Sat Apr 19 21:55:24 2008 New Revision: 134472 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=134472 Log: 2008-04-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/35944 PR fortran/35946 PR fortran/35947 * trans_array.c (gfc_trans_array_constructor): Temporarily realign loop, if loop->from is not zero, before creating the temporary array and provide an offset. PR fortran/35959 * trans-decl.c (gfc_init_default_dt): Add gfc_ prefix to name and allow for NULL body. Change all references from init_default_dt to gfc_init_default_dt. * trans.h : Add prototype for gfc_init_default_dt. * trans-array.c (gfc_trans_deferred_vars): After nullification call gfc_init_default_dt for derived types with allocatable components. 2008-04-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/35944 PR fortran/35946 PR fortran/35947 * gfortran.dg/array_constructor_23.f: New test. PR fortran/35959 * gfortran.dg/alloc_comp_default_init_2.f90: New test. * gfortran.dg/alloc_comp_basics_1.f90: Change occurrences of "builtin_free" to 27. * gfortran.dg/alloc_comp_constructor_1.f90: Change occurrences of "builtin_free" to 21. Added: trunk/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90 trunk/gcc/testsuite/gfortran.dg/array_constructor_23.f Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/trans-array.c trunk/gcc/fortran/trans-decl.c trunk/gcc/fortran/trans.h trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90 trunk/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90 Subject: Bug 35947 Author: pault Date: Sat Apr 19 22:30:03 2008 New Revision: 134475 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=134475 Log: 2008-04-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/35944 PR fortran/35946 PR fortran/35947 * trans_array.c (gfc_trans_array_constructor): Temporarily realign loop, if loop->from is not zero, before creating the temporary array and provide an offset. PR fortran/35959 * trans-decl.c (gfc_init_default_dt): Add gfc_ prefix to name and allow for NULL body. Change all references from init_default_dt to gfc_init_default_dt. * trans.h : Add prototype for gfc_init_default_dt. * trans-array.c (gfc_trans_deferred_vars): After nullification call gfc_init_default_dt for derived types with allocatable components. 2008-04-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/35944 PR fortran/35946 PR fortran/35947 * gfortran.dg/array_constructor_23.f: New test. PR fortran/35959 * gfortran.dg/alloc_comp_default_init_2.f90: New test. * gfortran.dg/alloc_comp_basics_1.f90: Change occurrences of "builtin_free" to 27. * gfortran.dg/alloc_comp_constructor_1.f90: Change occurrences of "builtin_free" to 21. Added: branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90 branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/array_constructor_23.f Modified: branches/gcc-4_3-branch/gcc/fortran/ChangeLog branches/gcc-4_3-branch/gcc/fortran/trans-array.c branches/gcc-4_3-branch/gcc/fortran/trans-decl.c branches/gcc-4_3-branch/gcc/fortran/trans.h branches/gcc-4_3-branch/gcc/testsuite/ChangeLog branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90 branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90 Fixed on trunk and 4.3. Thanks for the report. Paul |