re PR fortran/43409 (I/O: INQUIRE for SIZE does not work.)
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Sat, 20 Mar 2010 14:42:04 +0000 (14:42 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Sat, 20 Mar 2010 14:42:04 +0000 (14:42 +0000)
2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/43409
* gfortran.dg/inquire_size.f90: New test.

From-SVN: r157594

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

index 22ea531d78dad52f60ccd3e42c108e63abc24835..6bef88f2fc9ddb5918a2490ccccf901ad1338fa5 100644 (file)
@@ -1,3 +1,8 @@
+2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/43409
+       * gfortran.dg/inquire_size.f90: New test.
+
 2010-03-20  Richard Guenther  <rguenther@suse.de>
 
        PR rtl-optimization/43438
diff --git a/gcc/testsuite/gfortran.dg/inquire_size.f90 b/gcc/testsuite/gfortran.dg/inquire_size.f90
new file mode 100644 (file)
index 0000000..568c3d6
--- /dev/null
@@ -0,0 +1,28 @@
+! { dg-do run }
+! PR43409 I/O: INQUIRE for SIZE does not work.
+integer :: i
+character(30) :: aname = "noname"
+logical :: is_named
+
+open(25, file="testfile", status="replace", access="stream", form="unformatted")
+do i=1,100
+  write(25) i, "abcdefghijklmnopqrstuvwxyz"
+enddo
+flush(25)
+
+inquire(unit=25, named=is_named, name=aname, size=i)
+if (.not.is_named) call abort
+if (aname /= "testfile") call abort
+if (i /= 3000) call abort
+
+inquire(file="testfile", size=i)
+if (.not.is_named) call abort
+if (aname /= "testfile") call abort
+if (i /= 3000) call abort
+
+close(25, status="delete")
+inquire(file="testfile", size=i)
+if (i /= -1)  call abort
+end
+
+