aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJanne Blomqvist <jb@gcc.gnu.org>2019-05-21 18:17:44 +0300
committerJanne Blomqvist <jb@gcc.gnu.org>2019-05-21 18:17:44 +0300
commit1a815b1822c1ee00a3e48f68d445598c576d9edf (patch)
treee71dd4e2422c4a2b8454127f89bd55c759ccff6f
parent692af872fa50106af090e17cef92481207c33e89 (diff)
downloadgcc-1a815b1822c1ee00a3e48f68d445598c576d9edf.zip
gcc-1a815b1822c1ee00a3e48f68d445598c576d9edf.tar.gz
gcc-1a815b1822c1ee00a3e48f68d445598c576d9edf.tar.bz2
libfortran/90038: Document new wait=.false. implementation
2019-05-21 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/90038 * intrinsic.texi (EXECUTE_COMMAND_LINE): Explain new wait=.false. implementation. From-SVN: r271468
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/intrinsic.texi16
2 files changed, 16 insertions, 6 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index e5215aa..e6ae6bc 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2019-05-21 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/90038
+ * intrinsic.texi (EXECUTE_COMMAND_LINE): Explain new
+ wait=.false. implementation.
+
2019-05-20 Mark Eggleston <markeggleston@codethink.com>
* gfortran.texi: Remove reference to the ASSIGN statement, capitalise
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index ee857c6..f3f4c00 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -5596,12 +5596,12 @@ end program atomic
@code{EXECUTE_COMMAND_LINE} runs a shell command, synchronously or
asynchronously.
-The @code{COMMAND} argument is passed to the shell and executed, using
-the C library's @code{system} call. (The shell is @code{sh} on Unix
-systems, and @code{cmd.exe} on Windows.) If @code{WAIT} is present
-and has the value false, the execution of the command is asynchronous
-if the system supports it; otherwise, the command is executed
-synchronously.
+The @code{COMMAND} argument is passed to the shell and executed (The
+shell is @code{sh} on Unix systems, and @code{cmd.exe} on Windows.).
+If @code{WAIT} is present and has the value false, the execution of
+the command is asynchronous if the system supports it; otherwise, the
+command is executed synchronously using the C library's @code{system}
+call.
The three last arguments allow the user to get status information. After
synchronous execution, @code{EXITSTAT} contains the integer exit code of
@@ -5613,6 +5613,10 @@ Note that the @code{system} function need not be thread-safe. It is
the responsibility of the user to ensure that @code{system} is not
called concurrently.
+For asynchronous execution on supported targets, the POSIX
+@code{posix_spawn} or @code{fork} functions are used. Also, a signal
+handler for the @code{SIGCHLD} signal is installed.
+
@item @emph{Standard}:
Fortran 2008 and later