[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread jv244 at cam dot ac dot uk


--- Comment #12 from jv244 at cam dot ac dot uk  2010-04-24 12:25 ---
This was also ported back to 4.5.1, causing a regression there. This is against
the policy of 'open for regression and documentation fixes'. It was also never
approved for the branch only trunk.

2010-04-16  Steven G. Kargl  ka...@gcc.gnu.org

PR fortran/30073
* trans-array.c (gfc_trans_array_bound_check): Eliminate a redundant
block of code.  Set name to the variable associated with the
descriptor.

Just for completeness, this testcase again emphasizes that this is an ICE on
valid code.

MODULE fft_tools
  IMPLICIT NONE
  INTEGER, PARAMETER :: sp=4, dp=8
  INTEGER, PARAMETER :: lp = dp
CONTAINS
  SUBROUTINE sparse_alltoall ( rs, rq, rcount, rreq, group )
COMPLEX(KIND=lp), DIMENSION(:, :), 
  POINTER:: rs
COMPLEX(KIND=lp), DIMENSION(:, :), 
  POINTER:: rq
INTEGER, DIMENSION(:) :: rcount,rreq
INTEGER :: group, pos
IF ( rcount(pos) /= 0 ) THEN
   rq(1:rcount(pos),pos) = rs(1:rcount(pos),pos)
END IF
  END SUBROUTINE sparse_alltoall
END MODULE fft_tools


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

 CC||rguenther at suse dot de
   Keywords|ice-on-invalid-code |ice-on-valid-code
  Known to fail|4.6.0   |4.5.1 4.6.0
Summary|[4.6 Regression] tree check:|[4.5/4.6 Regression] tree
   |expected tree that contains |check: expected tree that
   |�decl minimal�  |contains �decl minimal�
   |structure, have |structure, have
   |�indirect_ref� in   |�indirect_ref� in
   |gfc_trans_array_bound_check |gfc_trans_array_bound_check
   Target Milestone|4.6.0   |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #13 from kargl at gcc dot gnu dot org  2010-04-24 16:56 ---
(In reply to comment #12)
 
 Just for completeness, this testcase again emphasizes that this is an ICE on
 valid code.
 
 MODULE fft_tools
   IMPLICIT NONE
   INTEGER, PARAMETER :: sp=4, dp=8
   INTEGER, PARAMETER :: lp = dp
 CONTAINS
   SUBROUTINE sparse_alltoall ( rs, rq, rcount, rreq, group )
 COMPLEX(KIND=lp), DIMENSION(:, :), 
   POINTER:: rs
 COMPLEX(KIND=lp), DIMENSION(:, :), 
   POINTER:: rq
 INTEGER, DIMENSION(:) :: rcount,rreq
 INTEGER :: group, pos
 IF ( rcount(pos) /= 0 ) THEN
rq(1:rcount(pos),pos) = rs(1:rcount(pos),pos)
 END IF
   END SUBROUTINE sparse_alltoall
 END MODULE fft_tools

For even more completeness, the code in comment #12 is still
invalid.  Don't worry I'll fix it before I eventually commit
the patch as noted in comment #11.


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 CC|rguenther at suse dot de|


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread jv244 at cam dot ac dot uk


--- Comment #14 from jv244 at cam dot ac dot uk  2010-04-24 17:58 ---
(In reply to comment #13)

 For even more completeness, the code in comment #12 is still
 invalid.

do you mind to clarify ?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #15 from kargl at gcc dot gnu dot org  2010-04-24 18:03 ---
(In reply to comment #14)
 (In reply to comment #13)
 
  For even more completeness, the code in comment #12 is still
  invalid.
 
 do you mind to clarify ?
 

pos is undefined.

Here's the testcase I will be committing.module fft_tools
  implicit none
  integer, parameter :: lp = 8
contains
  subroutine sparse_alltoall (rs, rq, rcount)
complex(kind=lp), dimension(:, :), pointer :: rs, rq
integer, dimension(:) :: rcount
integer :: pos
pos = 1
if (rcount(pos) /= 0) then
   rq(1:rcount(pos),pos) = rs(1:rcount(pos),pos)
end if
  end subroutine sparse_alltoall
end module fft_tools


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread jv244 at cam dot ac dot uk


--- Comment #16 from jv244 at cam dot ac dot uk  2010-04-24 18:12 ---
(In reply to comment #15)
 
 pos is undefined.
 

Ah, we're at that level.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #17 from kargl at gcc dot gnu dot org  2010-04-24 18:38 ---
Patch is here:

http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01518.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #18 from kargl at gcc dot gnu dot org  2010-04-24 20:32 ---
Subject: Bug 43793

Author: kargl
Date: Sat Apr 24 20:32:04 2010
New Revision: 158692

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158692
Log:
2010-04-24  Steven G. Kargl  ka...@gcc.gnu.org

PR fortran/30073
PR fortran/43793
* trans-array.c (gfc_trans_array_bound_check): Use TREE_CODE instead
of mucking with a tree directly.

2010-04-24  Steven G. Kargl  ka...@gcc.gnu.org

PR fortran/30073
PR fortran/43793
gfortran.dg/pr43793.f90: New test.

Added:
trunk/gcc/testsuite/gfortran.dg/pr43793.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-array.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #19 from kargl at gcc dot gnu dot org  2010-04-24 21:47 ---
Subject: Bug 43793

Author: kargl
Date: Sat Apr 24 21:46:45 2010
New Revision: 158693

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158693
Log:
010-04-24  Steven G. Kargl  ka...@gcc.gnu.org

PR fortran/30073
PR fortran/43793
* trans-array.c (gfc_trans_array_bound_check): Use TREE_CODE instead
of mucking with a tree directly.

2010-04-24  Steven G. Kargl  ka...@gcc.gnu.org

PR fortran/30073
PR fortran/43793
gfortran.dg/pr43793.f90: New test.

Added:
branches/gcc-4_5-branch/gcc/testsuite/gfortran.dg/pr43793.f90
Modified:
branches/gcc-4_5-branch/gcc/fortran/ChangeLog
branches/gcc-4_5-branch/gcc/fortran/trans-array.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793



[Bug fortran/43793] [4.5/4.6 Regression] tree check: expected tree that contains �decl minimal� structure, have �indirect_ref� in gfc_trans_array_bound_check

2010-04-24 Thread kargl at gcc dot gnu dot org


--- Comment #20 from kargl at gcc dot gnu dot org  2010-04-24 21:48 ---
Fix.


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43793