diff gcc/testsuite/gfortran.dg/inquire_size.f90 @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/gfortran.dg/inquire_size.f90	Fri Oct 27 22:46:09 2017 +0900
@@ -0,0 +1,30 @@
+! { 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_inquire_size", status="replace", access="stream", form="unformatted")
+do i=1,100
+  write(25) i, "abcdefghijklmnopqrstuvwxyz"
+enddo
+! Gfortran implicitly flushes the buffer when doing a file size
+! inquire on an open file.
+! flush(25)
+
+inquire(unit=25, named=is_named, name=aname, size=i)
+if (.not.is_named) call abort
+if (aname /= "testfile_inquire_size") call abort
+if (i /= 3000) call abort
+
+inquire(file="testfile_inquire_size", size=i)
+if (.not.is_named) call abort
+if (aname /= "testfile_inquire_size") call abort
+if (i /= 3000) call abort
+
+close(25, status="delete")
+inquire(file="testfile_inquire_size", size=i)
+if (i /= -1)  call abort
+end
+
+