Commit e1e24dc1 by Paul Thomas

re PR fortran/31011 ([4.2 and 4.1 only] Incorrect error: parameter array sections)

2007-03-08 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/31011
	* expr.c (find_array_section): Correct arithmetic for section
	size.

2007-03-08 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/31011
	* gfortran.dg/parameter_array_section_2.f90: New test.

From-SVN: r122689
parent 1916c916
2007-03-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31011
* expr.c (find_array_section): Correct arithmetic for section
size.
2007-03-07 Brooks Moses <brooks.moses@codesourcery.com> 2007-03-07 Brooks Moses <brooks.moses@codesourcery.com>
* iresolve.c (gfc_resolve_ishftc): Correct s_kind value. * iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
......
...@@ -1137,8 +1137,7 @@ find_array_section (gfc_expr *expr, gfc_ref *ref) ...@@ -1137,8 +1137,7 @@ find_array_section (gfc_expr *expr, gfc_ref *ref)
} }
/* Calculate the number of elements and the shape. */ /* Calculate the number of elements and the shape. */
mpz_abs (tmp_mpz, stride[d]); mpz_set (tmp_mpz, stride[d]);
mpz_div (tmp_mpz, stride[d], tmp_mpz);
mpz_add (tmp_mpz, end[d], tmp_mpz); mpz_add (tmp_mpz, end[d], tmp_mpz);
mpz_sub (tmp_mpz, tmp_mpz, ctr[d]); mpz_sub (tmp_mpz, tmp_mpz, ctr[d]);
mpz_div (tmp_mpz, tmp_mpz, stride[d]); mpz_div (tmp_mpz, tmp_mpz, stride[d]);
......
2007-03-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31011
* gfortran.dg/parameter_array_section_2.f90: New test.
2007-03-08 Volker Reichelt <reichelt@netcologne.de> 2007-03-08 Volker Reichelt <reichelt@netcologne.de>
PR c++/30852 PR c++/30852
! { dg-do run }
! { dg-options "-O" }
! Test the fix for PR31011 in which the length of the array sections
! with stride other than unity were incorrectly calculated.
!
! Contributed by <terry@chem.gu.se>
!
program PotentialMatrix
implicit none
real(kind=8),dimension(2),parameter::v2=(/1,2/)
real(kind=8),dimension(4),parameter::v4=(/1,2,3,4/)
if (any (v2*v4(1:3:2) .ne. (/1,6/))) call abort ()
if (any (v2*v4(3:1:-2) .ne. (/3,2/))) call abort ()
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment