gcc/libgfortran
Janne Blomqvist b923394429 PR 67585 Handle EINTR
Many POSIX systems have the bad habit of not restarting interrupted
syscalls. On these systems it's up to the user to check for an error
with errno == EINTR and restart manually. This patch does this for
libgfortran, so that GFortran users don't have to do it.

2016-10-09  Janne Blomqvist  <jb@gcc.gnu.org>

        PR libfortran/67585
        * io/io.h: TEMP_FAILURE_RETRY: Define macro if not found.
        * io/unix.c (raw_read): Handle EINTR.
        (raw_write): Check for return value -1.
        (raw_seek): Handle EINTR.
        (raw_tell): Likewise.
        (raw_size): Likewise.
        (raw_truncate): Likewise.
        (raw_close): Likewise.
        (buf_flush): Call raw_seek instead of lseek.
        (buf_read): Likewise.
        (buf_write): Likewise.
        (fd_to_stream): Handle EINTR.
        (tempfile_open): Likewise.
        (regular_file2): Likewise.
        (compare_file_filename): Likewise.
        (find_file): Likewise.
        (inquire_sequential): Likewise.
        (inquire_direct): Likewise.
        (inquire_formatted): Likewise.

From-SVN: r240902
2016-10-09 21:05:56 +03:00
..
caf re PR libfortran/77663 (libgfortran/caf/single.c: three minor problems and a lost token) 2016-10-01 16:00:57 +02:00
config Update copyright years. 2016-01-04 15:30:50 +01:00
generated Update copyright years. 2016-01-04 15:30:50 +01:00
ieee re PR fortran/77507 (gfortran rejects keyworded calls to procedures from intrinsic modules) 2016-09-09 17:57:11 +00:00
intrinsics Use rand_s on MinGW-w64, fix array bound overflow. 2016-09-21 13:07:06 +03:00
io PR 67585 Handle EINTR 2016-10-09 21:05:56 +03:00
m4 Update copyright years. 2016-01-04 15:30:50 +01:00
runtime Replace KISS PRNG with xorshift1024* using per-thread state. 2016-08-11 11:58:55 +03:00
ChangeLog PR 67585 Handle EINTR 2016-10-09 21:05:56 +03:00
ChangeLog-2002 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2003 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2004 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2005 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2006 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2007 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2008 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2009 ChangeLog-2002: Add copyright footer. 2010-01-04 09:59:59 +01:00
ChangeLog-2010 Rotate ChangeLogs. 2011-01-02 08:22:05 -08:00
ChangeLog-2011 2012-01-09 Richard Guenther <rguenther@suse.de> 2012-01-09 10:11:38 +00:00
ChangeLog-2012 ChangeLog rotation. 2013-01-03 10:47:48 +01:00
ChangeLog-2013 Rotate ChangeLog for 2013. 2014-06-17 06:55:59 +03:00
ChangeLog-2014 Update copyright years. 2016-01-04 15:30:50 +01:00
ChangeLog-2015 Update copyright years. 2016-01-04 15:30:50 +01:00
Makefile.am re PR fortran/29600 ([F03] MINLOC and MAXLOC take an optional KIND argument) 2015-08-26 12:37:42 +00:00
Makefile.in re PR fortran/29600 ([F03] MINLOC and MAXLOC take an optional KIND argument) 2015-08-26 12:37:42 +00:00
acinclude.m4 re PR fortran/47571 (undefined reference to clock_gettime in Linux build of 02/01/2011) 2015-08-31 14:02:43 +00:00
aclocal.m4 re PR libfortran/54572 (Use libbacktrace library) 2015-08-23 21:50:30 +00:00
c99_protos.h Update copyright years. 2016-01-04 15:30:50 +01:00
config.h.in re PR fortran/47571 (undefined reference to clock_gettime in Linux build of 02/01/2011) 2015-08-31 14:02:43 +00:00
configure configure.ac (nvptx-*): Hardwire newlib. 2016-08-29 19:09:57 +00:00
configure.ac configure.ac (nvptx-*): Hardwire newlib. 2016-08-29 19:09:57 +00:00
configure.host configure.host (ieee_flags): Add -mieee for alpha*. 2014-07-02 10:45:08 +02:00
gfortran.map [multiple changes] 2016-08-31 05:36:22 +00:00
kinds-override.h Update copyright years. 2016-01-04 15:30:50 +01:00
libgfortran.h Update copyright years. 2016-01-04 15:30:50 +01:00
libgfortran.spec.in re PR fortran/32049 (Support on x86_64 also kind=16) 2010-11-16 22:23:19 +01:00
libtool-version
mk-kinds-h.sh re PR fortran/32049 (Support on x86_64 also kind=16) 2010-11-16 22:23:19 +01:00
mk-sik-inc.sh
mk-srk-inc.sh intrinsic.h (gfc_check_selected_real_kind, [...]): Update prototypes. 2010-06-25 21:40:37 +02:00