Fix race on temp file in gfortran tests.
authorChristophe Lyon <christophe.lyon@linaro.org>
Mon, 26 Oct 2015 10:37:22 +0000 (10:37 +0000)
committerChristophe Lyon <clyon@gcc.gnu.org>
Mon, 26 Oct 2015 10:37:22 +0000 (11:37 +0100)
2015-10-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gfortran.dg/chmod_1.f90: Add suffix to the temporary filename to
make it unique per testcase.
* gfortran.dg/chmod_2.f90: Likewise.
* gfortran.dg/chmod_3.f90: Likewise.
* gfortran.dg/direct_io_8.f90: Likewise.
* gfortran.dg/f2003_inquire_1.f03: Likewise.
* gfortran.dg/f2003_io_1.f03: Likewise.
* gfortran.dg/f2003_io_2.f03: Likewise.
* gfortran.dg/f2003_io_8.f03: Likewise.
* gfortran.dg/inquire_size.f90: Likewise.
* gfortran.dg/namelist_66.f90: Likewise.
* gfortran.dg/namelist_82.f90: Likewise.
* gfortran.dg/namelist_87.f90: Likewise.
* gfortran.dg/open_negative_unit_1.f90: Likewise.
* gfortran.dg/open_new.f90: Likewise.
* gfortran.dg/stat_1.f90: Likewise.
* gfortran.dg/stat_2.f90: Likewise.
* gfortran.dg/streamio_15.f90: Likewise.
* gfortran.dg/unf_read_corrupted_1.f90: Likewise.

From-SVN: r229319

19 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/chmod_1.f90
gcc/testsuite/gfortran.dg/chmod_2.f90
gcc/testsuite/gfortran.dg/chmod_3.f90
gcc/testsuite/gfortran.dg/direct_io_8.f90
gcc/testsuite/gfortran.dg/f2003_inquire_1.f03
gcc/testsuite/gfortran.dg/f2003_io_1.f03
gcc/testsuite/gfortran.dg/f2003_io_2.f03
gcc/testsuite/gfortran.dg/f2003_io_8.f03
gcc/testsuite/gfortran.dg/inquire_size.f90
gcc/testsuite/gfortran.dg/namelist_66.f90
gcc/testsuite/gfortran.dg/namelist_82.f90
gcc/testsuite/gfortran.dg/namelist_87.f90
gcc/testsuite/gfortran.dg/open_negative_unit_1.f90
gcc/testsuite/gfortran.dg/open_new.f90
gcc/testsuite/gfortran.dg/stat_1.f90
gcc/testsuite/gfortran.dg/stat_2.f90
gcc/testsuite/gfortran.dg/streamio_15.f90
gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f90

index d12338a514860c13d23b59328b095737c7de73e1..73e0a39434a7f635e48931a4d69e66d22bcd2d7b 100644 (file)
@@ -1,3 +1,25 @@
+2015-10-26  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       * gfortran.dg/chmod_1.f90: Add suffix to the temporary filename to
+       make it unique per testcase.
+       * gfortran.dg/chmod_2.f90: Likewise.
+       * gfortran.dg/chmod_3.f90: Likewise.
+       * gfortran.dg/direct_io_8.f90: Likewise.
+       * gfortran.dg/f2003_inquire_1.f03: Likewise.
+       * gfortran.dg/f2003_io_1.f03: Likewise.
+       * gfortran.dg/f2003_io_2.f03: Likewise.
+       * gfortran.dg/f2003_io_8.f03: Likewise.
+       * gfortran.dg/inquire_size.f90: Likewise.
+       * gfortran.dg/namelist_66.f90: Likewise.
+       * gfortran.dg/namelist_82.f90: Likewise.
+       * gfortran.dg/namelist_87.f90: Likewise.
+       * gfortran.dg/open_negative_unit_1.f90: Likewise.
+       * gfortran.dg/open_new.f90: Likewise.
+       * gfortran.dg/stat_1.f90: Likewise.
+       * gfortran.dg/stat_2.f90: Likewise.
+       * gfortran.dg/streamio_15.f90: Likewise.
+       * gfortran.dg/unf_read_corrupted_1.f90: Likewise.
+
 2015-10-26  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        PR middle-end/67989
index 07760cf12454f4b468c63eb471ff9bf3a35b4c32..452b333dc35f6bd13686758e8fc91aba66822309 100644 (file)
@@ -2,7 +2,7 @@
 ! { dg-options "-std=gnu" }
 ! See PR38956.  Test fails on cygwin when user has Administrator rights
   implicit none
-  character(len=*), parameter :: n = "foobar_file"
+  character(len=*), parameter :: n = "foobar_file_chmod_1"
   integer :: i
 
   open (10,file=n)
index 3e5ed617be4c9073e152b4d9226f2880a82b35b5..68ff17d6cbffec9d5398ac6aeffeacc44dd62a49 100644 (file)
@@ -2,7 +2,7 @@
 ! { dg-options "-std=gnu" }
 ! See PR38956.  Test fails on cygwin when user has Administrator rights
   implicit none
-  character(len=*), parameter :: n = "foobar_file"
+  character(len=*), parameter :: n = "foobar_file_chmod_2"
   integer :: i
 
   open (10,file=n)
index 9e92ecabccd133d7105c6b6c5d374b119f3dda83..5df752844a86cd4a3aba3f7fec10301f8b0c44a0 100644 (file)
@@ -2,7 +2,7 @@
 ! { dg-options "-std=gnu -fdefault-integer-8" }
 ! See PR38956.  Test fails on cygwin when user has Administrator rights
   implicit none
-  character(len=*), parameter :: n = "foobar_file"
+  character(len=*), parameter :: n = "foobar_file_chmod_3"
   integer :: i
 
   open (10,file=n)
index 5e384a1cfa327e86d0b2be9a13aab143cf291cee..87a8a6b54e344c632b8f521de8d4e2992ae49893 100644 (file)
@@ -7,7 +7,7 @@ program main
   i=44
   ir = -42
 
-  open(11,file="foo.dat")
+  open(11,file="foo_direct_io_8.dat")
   ! Try a direct access read on a formatted sequential rile
   READ (11, REC = I, ERR = 99) TEMP_CHANGES
   call abort
index 544a8109a211de5840c193100dcdf69ed47db7a7..87ddf59c4a4fddfab2bd9481177011818150f44f 100644 (file)
@@ -4,7 +4,7 @@ character(25) :: sround, ssign, sasynchronous, sdecimal, sencoding
 integer :: vsize, vid
 logical :: vpending
 
-open(10, file='mydata', asynchronous="yes", blank="null", &
+open(10, file='mydata_f2003_inquire_1', asynchronous="yes", blank="null", &
 & decimal="comma", encoding="utf-8", sign="plus")
 
 inquire(unit=10, round=sround, sign=ssign, size=vsize, id=vid, &
index f1d67c5aaaef868d41ac8f07f13e5669f68d7b80..2a2294fa21dfdb30ce26404ff06904b670a6837c 100644 (file)
@@ -8,7 +8,7 @@ character(25) :: msg
 
 a = 23.45
 b = 0.0
-open(10, file='mydata', asynchronous="yes", blank="null")
+open(10, file='mydata_f2003_io_1', asynchronous="yes", blank="null")
 
 write(10,'(10f8.3)', asynchronous="yes", decimal="comma", id=j) a
 rewind(10)
index 54c0516dfedfa73454c224fa6482dbaa979e1e78..599eb5b181f76a42c0440bf27f1fac80407d8c77 100644 (file)
@@ -7,7 +7,7 @@ character(25) :: msg
 real, dimension(10) :: a, b
 
 a = 43.21
-open(10, file='mydata', asynchronous="yes")
+open(10, file='mydata_f2003_io_2', asynchronous="yes")
 write(10,'(10f8.3)', asynchronous="yes", decimal="comma") a
 rewind(10)
 read(10,'(10f8.3)', asynchronous="yes", decimal="comma", id=idvar) b
index 2362697c6bb6562e80b3f0c136c9fa3fe937d7c8..4d2f002fd0e618c9081d16d096b76208a12e9925 100644 (file)
@@ -6,7 +6,7 @@ real :: c
 integer :: istat, j
 character(25) :: msg
 
-open(10, file='mydata', asynchronous="yes", blank="null")
+open(10, file='mydata_f2003_io_8', asynchronous="yes", blank="null")
 write(10,'(10f8.3)', asynchronous='no', decimal="comma", id=j) a ! { dg-error "must be with ASYNCHRONOUS=" }
 read(10,'(10f8.3)', id=j, decimal="comma", blank="zero") b ! { dg-error "must be with ASYNCHRONOUS=" }
 read(10,'(10f8.3)', asynchronous=msg, decimal="comma", blank="zero") b ! { dg-error "must be an initialization expression" }
index 13876cfb7fd764d4cbb2d12af3ced7c94e285824..ce2db48e725fa12ec9cbc5f7b2a3d47fa397c08d 100644 (file)
@@ -4,7 +4,7 @@ integer :: i
 character(30) :: aname = "noname"
 logical :: is_named
 
-open(25, file="testfile", status="replace", access="stream", form="unformatted")
+open(25, file="testfile_inquire_size", status="replace", access="stream", form="unformatted")
 do i=1,100
   write(25) i, "abcdefghijklmnopqrstuvwxyz"
 enddo
@@ -14,16 +14,16 @@ enddo
 
 inquire(unit=25, named=is_named, name=aname, size=i)
 if (.not.is_named) call abort
-if (aname /= "testfile") call abort
+if (aname /= "testfile_inquire_size") call abort
 if (i /= 3000) call abort
 
-inquire(file="testfile", size=i)
+inquire(file="testfile_inquire_size", size=i)
 if (.not.is_named) call abort
-if (aname /= "testfile") call abort
+if (aname /= "testfile_inquire_size") call abort
 if (i /= 3000) call abort
 
 close(25, status="delete")
-inquire(file="testfile", size=i)
+inquire(file="testfile_inquire_size", size=i)
 if (i /= -1)  call abort
 end
 
index d779ea7b735b722e416afede655a8c335bc0b3ba..436304e26765932d9a0364c717ccda9892cc5e43 100644 (file)
@@ -17,7 +17,7 @@ end type qptracer
 type(qptracer) , dimension(3) :: qtracer
 namelist/naml2/  qtracer
 
-open (99, file='nml.dat', status="replace")
+open (99, file='nml_66.dat', status="replace")
 write(99,*) "&naml1"
 write(99,*) "   tracer(1)   = 'aa', .true."
 write(99,*) "   tracer(2)   = 'bb', .true."
index 399d59fe66bc60778e8900387731296d37a1cdd2..aae700f686da105203b6d3e725587520741c94a5 100644 (file)
@@ -10,7 +10,7 @@ namelist/naml1/  tracer
 
 tracer(:) = ptracer('XXX', .false.)
 
-open (99, file='nml.dat', status="replace")
+open (99, file='nml_82.dat', status="replace")
 write(99,*) "&naml1"
 !write(99,*) "   tracer(2)   = 'bb' , .true."
 write(99,*) "   tracer(:)   = 'aa' , .true."
index 8528a5caa95b975ce1b5e4b4dfca17ccb31f4d51..c19d106d68f0d33151537ef1d976f1cdeb37a882 100644 (file)
@@ -30,7 +30,7 @@ character(3) :: c2 = 'YYY'
 character(3) :: c3 = 'ZZZ'
 namelist /nml/ i, r1,r2,r3,r4,r5,c,ll,c1,c2,c3
 
-open (99, file='nml.dat', status="replace")
+open (99, file='nml_87.dat', status="replace")
 write(99,*) "&nml"
 write(99,*) "  i=42!11"         ! Fixed BUG: wrong result: Unmodified, no error
 write(99,*) "  r1=43!11"        ! Fixed BUG: wrong result: Unmodified, no error
index bbcf46b72a6ad59af77e8086fb80a2e6fb5d46bd..93ea1f12178f132d53cc541c5c0dc64949e6296f 100644 (file)
@@ -9,7 +9,7 @@ program nutest
     logical l
     integer id, ios
 
-    open(newunit=id, file="foo.txt", iostat=ios)
+    open(newunit=id, file="foo_open_negative_unit_1.txt", iostat=ios)
     if (ios /= 0) call abort
 
     open(id, file="bar.txt", iostat=ios)
@@ -17,14 +17,14 @@ program nutest
 
     close(id, status="delete")
 
-    open(unit=10, file="foo.txt", status="old", iostat=ios)
+    open(unit=10, file="foo_open_negative_unit_1.txt", status="old", iostat=ios)
     if (ios /= 0) call abort
 
     close(10, status="delete")
 
-    open(-10, file="foo.txt", iostat=ios)
+    open(-10, file="foo_open_negative_unit_1.txt", iostat=ios)
     if (ios == 0) call abort
 
-    inquire(file="foo.txt", exist=l)
+    inquire(file="foo_open_negative_unit_1.txt", exist=l)
     if (l) call abort
 end program nutest
index 96edd93c3473a0b045a180cebc2e3516cd95618d..6f36ca04d31e0f5630d072ad105a94a5763c13c5 100644 (file)
@@ -3,9 +3,9 @@
 !            status="new" is an error
 program main
   nout = 10
-  open(nout, file="foo.dat", status="replace")     ! make sure foo.dat exists
+  open(nout, file="foo_open_new.dat", status="replace")     ! make sure foo_open_new.dat exists
   close(nout)
-  open(nout, file="foo.dat", status="new",err=100)
+  open(nout, file="foo_open_new.dat", status="new",err=100)
   call abort                 ! This should never happen
-100 call unlink ("foo.dat")
+100 call unlink ("foo_open_new.dat")
 end program main
index 95ad66a391c1d728a9349ea5cd76e14e44cf128f..ec582f904a50ac5b31134158d887213e6c7edaa5 100644 (file)
@@ -1,7 +1,7 @@
 ! { dg-do run }
 ! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } }
 ! { dg-options "-std=gnu" }
-  character(len=*), parameter :: f = "testfile"
+  character(len=*), parameter :: f = "testfile_stat_1"
   integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd
   
   open (10,file=f)
index a530ec3477c1626969bba668d345f35a0787fdf9..a3eb6b2d475aeb545d55ff504e3f81df4dfa8ed7 100644 (file)
@@ -1,7 +1,7 @@
 ! { dg-do run }
 ! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } }
 ! { dg-options "-std=gnu" }
-  character(len=*), parameter :: f = "testfile"
+  character(len=*), parameter :: f = "testfile_stat_2"
   integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd
   
   open (10,file=f)
index bbe91f1106d6b7c95496575ba20fa5fff1ab8fc6..eee59a4e888fe542bc8d21cbf8c30898e326168f 100644 (file)
@@ -13,7 +13,7 @@ program main
   if (newline_length < 1 .or. newline_length > 2) call abort
   close(20)
 
-  open(20,file="foo.txt",form="formatted",access="stream")
+  open(20,file="foo_streamio_15.txt",form="formatted",access="stream")
   write(20,'(A)') '123456'
   write(20,'(A)') 'abcdef'
   write(20,'(A)') 'qwerty'
index e7bb441e99eec385381351dea1620eb33a30822c..1cf879bd10c96072b8a27e9397f805354f4efbb9 100644 (file)
@@ -10,13 +10,13 @@ program main
   ! Write out a truncated unformatted sequential file by
   ! using unformatted stream.
 
-  open (10, form="unformatted", access="stream", file="foo.dat", &
+  open (10, form="unformatted", access="stream", file="foo_unf_read_corrupted_1.dat", &
   status="unknown")
   write (10) 16_4, 1_4
   close (10, status="keep")
 
   ! Try to read
-  open (10, file="foo.dat", form="unformatted", access="sequential")
+  open (10, file="foo_unf_read_corrupted_1.dat", form="unformatted", access="sequential")
   i1 = 0
   i2 = 0
   read (10, iostat=ios, iomsg=msg) i1, i2