From 5f9bfaf2bcc4f12f5ee6ac33c2bab1a752db1f4d Mon Sep 17 00:00:00 2001 From: Thomas Koenig Date: Sun, 17 Apr 2005 20:26:57 +0000 Subject: 005-04-17 Thomas Koenig PR libfortran/21075 * m4/reshape.m4 (reshape_`'rtype_kind): Change dimension of auxiliary arrays from GFC_MAX_DIMENSIONS - 1 to GFC_MAX_DIMENSIONS. * intrinsics/reshape_generic.c (reshape_generic): Likewise. * generated/reshape_i4.c: Regenerated. * generated/reshape_i8.c: Regenerated. 2005-04-17 Thomas Koenig PR libfortran/21075 * gfortran.dg/reshape_rank7.f90: New test. From-SVN: r98288 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/reshape_rank7.f90 | 27 +++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/reshape_rank7.f90 (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 73501f2..b683caf 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-04-17 Thomas Koenig + + PR libfortran/21075 + * gfortran.dg/reshape_rank7.f90: New test. + 2005-04-17 Paul Thomas PR libfortran/12884 gfortran.dg/pr12884.f: New test diff --git a/gcc/testsuite/gfortran.dg/reshape_rank7.f90 b/gcc/testsuite/gfortran.dg/reshape_rank7.f90 new file mode 100644 index 0000000..d8f84f7 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/reshape_rank7.f90 @@ -0,0 +1,27 @@ +! { dg-do run} +! PR 21075: Reshape with rank 7 used to segfault. +program main + integer :: a(256), b(2,2,2,2,2,2,2) + do i=1,256 + a(i) = i + end do + b = reshape(a(1:256:2), shape(b)) + do i1=1,2 + do i2=1,2 + do i3=1,2 + do i4=1,2 + do i5=1,2 + do i6=1,2 + do i7=1,2 + if (b(i1,i2,i3,i4,i5,i6,i7) /= & + 2*((i1-1)+(i2-1)*2+(i3-1)*4+(i4-1)*8+& + (i5-1)*16+(i6-1)*32+(i7-1)*64)+1) & + call abort + end do + end do + end do + end do + end do + end do + end do +end program main -- cgit v1.1