Commit 1069f584 by Rainer Orth Committed by Rainer Orth

re PR fortran/42900 (gfortran.dg/stat_[12].f90 may fail on NFS filesystems)

	PR fortran/42900
	* gfortran.dg/stat_1.f90: Accept 'testfile' gid == parent dir gid.
	Explain this.
	* gfortran.dg/stat_2.f90: Likewise.

From-SVN: r157135
parent 894e2652
2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR fortran/42900
* gfortran.dg/stat_1.f90: Accept 'testfile' gid == parent dir gid.
Explain this.
* gfortran.dg/stat_2.f90: Likewise.
2010-03-01 Tobias Burnus <burnus@net-b.de> 2010-03-01 Tobias Burnus <burnus@net-b.de>
PR fortran/43199 PR fortran/43199
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } } ! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } }
! { dg-options "-std=gnu" } ! { dg-options "-std=gnu" }
character(len=*), parameter :: f = "testfile" character(len=*), parameter :: f = "testfile"
integer :: s1(13), r1, s2(13), r2, s3(13), r3 integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd
open (10,file=f) open (10,file=f)
write (10,"(A)") "foo" write (10,"(A)") "foo"
...@@ -12,11 +12,15 @@ ...@@ -12,11 +12,15 @@
call lstat (f, s1, r1) call lstat (f, s1, r1)
call stat (f, s2, r2) call stat (f, s2, r2)
call fstat (10, s3, r3) call fstat (10, s3, r3)
call stat (".", d, rd)
if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0) call abort if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) call abort
if (any (s1 /= s2) .or. any (s1 /= s3)) call abort if (any (s1 /= s2) .or. any (s1 /= s3)) call abort
if (s1(5) /= getuid()) call abort if (s1(5) /= getuid()) call abort
if (s1(6) /= getgid() .and. getgid() /= 0) call abort ! If the test is run in a directory with the sgid bit set or on a filesystem
! mounted with the grpid option, new files are created with the directory's
! gid instead of the user's primary gid, so allow for that.
if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) call abort
if (s1(8) < 3 .or. s1(8) > 5) call abort if (s1(8) < 3 .or. s1(8) > 5) call abort
close (10,status="delete") close (10,status="delete")
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } } ! { dg-skip-if "" { *-*-mingw* spu-*-* } { "*" } { "" } }
! { dg-options "-std=gnu" } ! { dg-options "-std=gnu" }
character(len=*), parameter :: f = "testfile" character(len=*), parameter :: f = "testfile"
integer :: s1(13), r1, s2(13), r2, s3(13), r3 integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd
open (10,file=f) open (10,file=f)
write (10,"(A)") "foo" write (10,"(A)") "foo"
...@@ -12,11 +12,15 @@ ...@@ -12,11 +12,15 @@
r1 = lstat (f, s1) r1 = lstat (f, s1)
r2 = stat (f, s2) r2 = stat (f, s2)
r3 = fstat (10, s3) r3 = fstat (10, s3)
rd = stat (".", d)
if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0) call abort if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) call abort
if (any (s1 /= s2) .or. any (s1 /= s3)) call abort if (any (s1 /= s2) .or. any (s1 /= s3)) call abort
if (s1(5) /= getuid()) call abort if (s1(5) /= getuid()) call abort
if (s1(6) /= getgid() .and. getgid() /= 0) call abort ! If the test is run in a directory with the sgid bit set or on a filesystem
! mounted with the grpid option, new files are created with the directory's
! gid instead of the user's primary gid, so allow for that.
if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) call abort
if (s1(8) < 3 .or. s1(8) > 5) call abort if (s1(8) < 3 .or. s1(8) > 5) call abort
close (10,status="delete") close (10,status="delete")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment