This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/48955] [4.6/4.7 Regression] Wrong result for array assignment due to missing temporary
- From: "pault at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 11 May 2011 20:04:23 +0000
- Subject: [Bug fortran/48955] [4.6/4.7 Regression] Wrong result for array assignment due to missing temporary
- Auto-submitted: auto-generated
- References: <bug-48955-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48955
--- Comment #4 from Paul Thomas <pault at gcc dot gnu.org> 2011-05-11 19:57:21 UTC ---
Created attachment 24229
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24229
A fix for the PR
This fixes the problem in two steps:
(i) It reverts r162289; and
(ii) It adds the correct initialization for loop.reverse[] in
gfc_trans_assignment_1. This was implemented incorrectly in the fix for
PR24524 (in spite of the correct comment in dependency.c!) and removed at
sometime, I do not know why.
****sigh****
Bootstraps and regtests on x86_64/FC9. I will add a testcase and submit
formally tomorrow night. There are probably other assignements, such as in FOR
and WHERE blocks that could do with reversing being enabled. I'll put thinking
cap on after I have fixed this PR.
Paul