about summary refs log tree commit diff
path: root/manual/stdio.texi
diff options
context:
space:
mode:
Diffstat (limited to 'manual/stdio.texi')
-rw-r--r--manual/stdio.texi21
1 files changed, 21 insertions, 0 deletions
diff --git a/manual/stdio.texi b/manual/stdio.texi
index 02236e3273..e922fd17d8 100644
--- a/manual/stdio.texi
+++ b/manual/stdio.texi
@@ -279,6 +279,27 @@ you are using NFS.
 The function @code{fclose} is declared in @file{stdio.h}.
 @end deftypefun
 
+To close all streams currently available the GNU C Library provides
+another function.
+
+@comment stdio.h
+@comment GNU
+@deftypefun int fcloseall (void)
+This function causes all open streams of the process to be closed and
+the connection to corresponding files to be broken.  All buffered data
+is written and any buffered inputis discarded.  The @code{fcloseall}
+function returns a value of @code{0} if all the files were closed
+successfully, and @code{EOF} if an error was detected.
+
+This function should be used in only in special situation, e.g., when an
+error occurred and the program must be aborted.  Normally each single
+stream should be closed separately so that problems with one stream can
+be identifier.  It is also problematic since the standard streams
+(@pxref{Standard Streams}) will also be closed.
+
+The function @code{fcloseall} is declared in @file{stdio.h}.
+@end deftypefun
+
 If the @code{main} function to your program returns, or if you call the
 @code{exit} function (@pxref{Normal Termination}), all open streams are
 automatically closed properly.  If your program terminates in any other