]> gcc.gnu.org Git - gcc.git/commitdiff
re PR libfortran/25289 (Cannot handle record numbers large than huge(0_4))
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Mon, 24 Jul 2006 00:26:08 +0000 (00:26 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Mon, 24 Jul 2006 00:26:08 +0000 (00:26 +0000)
2006-07-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/25289
* gfortran.dg/direct_io_6.f90: New test.

From-SVN: r115702

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/direct_io_6.f90 [new file with mode: 0644]

index 8e92c9bcb66afb979d86cad39b309c806d8df571..be305c67c69f2808e4f7986b318458432dfcc06a 100644 (file)
@@ -1,3 +1,8 @@
+2006-07-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/25289
+       * gfortran.dg/direct_io_6.f90: New test.
+
 2006-07-24  Jan Hubicka  <jh@suse.cz>
 
        PR c/25795
diff --git a/gcc/testsuite/gfortran.dg/direct_io_6.f90 b/gcc/testsuite/gfortran.dg/direct_io_6.f90
new file mode 100644 (file)
index 0000000..227d3fe
--- /dev/null
@@ -0,0 +1,27 @@
+!{ dg-do run }
+! PR25289 Cannot handle record numbers larger than huge(0_4).
+! This test checks that very large record numbers can be used.
+! Derived from example in PR.
+! Submitted by Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+      integer(KIND=1) abyte
+      integer(KIND=8) n
+      n = huge(0_4)
+      n = n * 256
+      abyte = 105
+      open(10,file="foo",recl=2,form='unformatted',access='direct')
+      write(10,rec=n) abyte
+      abyte = 0
+      read(10,rec=n) abyte
+      if (abyte.ne.105) call abort()
+      write(10,rec=1) abyte
+      abyte = 0
+      read(10,rec=1) abyte
+      if (abyte.ne.105) call abort()
+      n=n/2
+      write(10,rec=n) abyte
+      abyte = 0
+      read(10,rec=n) abyte
+      if (abyte.ne.105) call abort()
+      close(10, status="delete")
+      end
+      
\ No newline at end of file
This page took 0.109038 seconds and 5 git commands to generate.