This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch, libgfortran] PR30005 Open errors (not/already exists etc.): show also the file name


Jerry DeLisle wrote:
:ADDPATCH fortran:

Hi All,

This straight forward patch provides easier to understand error messages on file open and includes the file path in the message so users will have a clue where to look.

This is an enhancement and therefore should only go to trunk.

Regression tested on x86-64-linux.

I will work up a suitable test case.

Here it is:

! { dg-do run }
! PR30005 Enhanced error messages for OPEN
! Submitted by Jerry DeLisle  <jvdelisle@gcc.gnu.org>
character(60) :: msg
character(25) :: n = "temptestfile"
open(77,file=n,status="new")
close(77, status="keep")
msg=""
open(77,file=n,status="new", iomsg=msg, iostat=i)
if (msg /= "File 'temptestfile' already exists") call abort()

open(77,file=n,status="old")
close(77, status="delete")
open(77,file=n,status="old", iomsg=msg, iostat=i)
if (msg /= "File 'temptestfile' does not exist") call abort()

open(77,file="./", iomsg=msg, iostat=i)
if (msg /= "'./' is a directory") call abort()

open(77,file=n,status="new")
i = chmod(n, "-w")
if (i == 0) then
 close(77, status="keep")
 open(77,file=n, iomsg=msg, iostat=i, action="write")
 if (msg /= "Permission denied trying to open file 'temptestfile'") call abort()
endif

i = chmod(n,"+w")
open(77,file=n, iomsg=msg, iostat=i, action="read")
close(77, status="delete")
end


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]