aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2008-02-02 13:50:55 +0000
committerThomas Koenig <tkoenig@gcc.gnu.org>2008-02-02 13:50:55 +0000
commitee440dd05de292dde12376f8a977d2a4bf22c2c3 (patch)
tree41b636e47d1922843adc517116bfd40c4acb7428 /gcc
parent27f56cb1f2c371e33b32e1adb1f0f571c1266c41 (diff)
downloadgcc-ee440dd05de292dde12376f8a977d2a4bf22c2c3.zip
gcc-ee440dd05de292dde12376f8a977d2a4bf22c2c3.tar.gz
gcc-ee440dd05de292dde12376f8a977d2a4bf22c2c3.tar.bz2
re PR libfortran/35001 (shape for negative sizes)
2008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR libfortran/35001 * m4/shape.m4: Return 0 for extents <= 0. * generated/shape_i4.c: Regenerated. * generated/shape_i8.c: Regenerated. * generated/shape_i16.c: Regenerated. 2008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR libfortran/35001 * gfortran.dg/shape_4.f90: New test. Fixed in regression-only mode by special dispense (see the PR). From-SVN: r132070
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/shape_4.f9012
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8a96691..06cd1b1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/35001
+ * gfortran.dg/shape_4.f90: New test.
+
2008-02-02 Hans-Peter Nilsson <hp@axis.com>
* gcc.target/cris/torture/pr34773.c: Use __asm__, not asm.
diff --git a/gcc/testsuite/gfortran.dg/shape_4.f90 b/gcc/testsuite/gfortran.dg/shape_4.f90
new file mode 100644
index 0000000..9275b11
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/shape_4.f90
@@ -0,0 +1,12 @@
+! PR 35001 - we need to return 0 for the shapes of
+! negative extents. Test case adapted from Tobias Burnus.
+program main
+ implicit none
+ integer :: i,j, a(10,10),res(2)
+ j = 1
+ i = 10
+ res = shape(a(1:1,i:j:1))
+ if (res(1) /=1 .or. res(2) /= 0) call abort
+ res = shape(a(1:1,j:i:-1))
+ if (res(1) /=1 .or. res(2) /= 0) call abort
+end program main