aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@gcc.gnu.org>2007-05-10 01:09:57 +0000
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2007-05-10 01:09:57 +0000
commitd9099df88397aebc1ff7c0f116c1afb3602cbedc (patch)
treecd306a7c7df4cc396b31425f935597de6dc181b7
parentf1a6afe313c44d20e007032001345e1d800f0021 (diff)
downloadgcc-d9099df88397aebc1ff7c0f116c1afb3602cbedc.zip
gcc-d9099df88397aebc1ff7c0f116c1afb3602cbedc.tar.gz
gcc-d9099df88397aebc1ff7c0f116c1afb3602cbedc.tar.bz2
re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/31880 * gfortran.dg/unf_read_corrupted_2.f90: New test. From-SVN: r124590
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f9027
2 files changed, 32 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 53f0205..385a25c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31880
+ * gfortran.dg/unf_read_corrupted_2.f90: New test.
+
2007-05-09 Mike Stump <mrs@apple.com>
* g++.dg/other/first-global.C: Add -fpie for darwin.
diff --git a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
new file mode 100644
index 0000000..2a75da7
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
@@ -0,0 +1,27 @@
+! { dg-do run }
+! PR31880 silent data corruption in gfortran read statement
+! Test from PR.
+ program r3
+
+ integer(kind=4) :: a(1025),b(1025),c(1025),d(2048),e(1022)
+
+ a = 5
+ b = 6
+ c = 7
+ e = 8
+
+ do i=1,2048
+ d(i)=i
+ end do
+
+ open (3,file='a',form='unformatted')
+ write (3) a,b,c,d,e
+ rewind 3
+ d = 0
+ read (3) a,b,c,d
+ close (3)
+
+ if (d(1).ne.1) call abort
+ if (d(2048).ne.2048) call abort
+
+ end