diff options
Diffstat (limited to 'libgfortran/io/unix.c')
-rw-r--r-- | libgfortran/io/unix.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index 2e9d9a4..5be631a 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -286,7 +286,6 @@ sys_exit (int code) } - /********************************************************************* File descriptor stream functions *********************************************************************/ @@ -918,6 +917,22 @@ fd_to_stream (int fd, int prot) } +/* Given the Fortran unit number, convert it to a C file descriptor. */ + +int +unit_to_fd(int unit) +{ + + gfc_unit *us; + + us = find_unit(unit); + if (us == NULL) + return -1; + + return ((unix_stream *) us->s)->fd; +} + + /* unpack_filename()-- Given a fortran string and a pointer to a * buffer that is PATH_MAX characters, convert the fortran string to a * C string in the buffer. Returns nonzero if this is not possible. */ |