OSDN Git Service

2006-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
authorjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Feb 2006 18:23:38 +0000 (18:23 +0000)
committerjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Feb 2006 18:23:38 +0000 (18:23 +0000)
PR libgfortran/26423
* gfortran.dg/read_many_1.f: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111421 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/read_many_1.f [new file with mode: 0644]

index 63ce0aa..c1d4744 100644 (file)
@@ -1,3 +1,8 @@
+2006-02-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/26423
+       * gfortran.dg/read_many_1.f: New test.
+
 2006-02-24  Paul Thomas  <pault@gcc.gnu.org>
 
        PR fortran/24519
diff --git a/gcc/testsuite/gfortran.dg/read_many_1.f b/gcc/testsuite/gfortran.dg/read_many_1.f
new file mode 100644 (file)
index 0000000..ef81fa8
--- /dev/null
@@ -0,0 +1,23 @@
+!{ dg-do run }
+! PR26423 Large file I/O error related to buffering
+! Test case derived from case by Dale Ranta.
+! Submitted  by Jerry DeLisle  <jvdelisle@gcc.gnu.org> 
+      integer :: a(3000) , b(2048)
+      a=3
+      b=5
+      a(1) = 1
+      a(3000)=1234
+      write(2) a
+      b(1) = 2
+      b(2048) = 5678
+      write(2) b
+      rewind 2
+      read(2) a
+      read(2) b
+      if (a(1).ne.1) call abort()
+      if (a(2).ne.3) call abort()
+      if (b(1).ne.2) call abort()
+      if (b(2).ne.5) call abort()
+      if (a(3000).ne.1234) call abort()
+      if (b(2048).ne.5678) call abort()
+      end