Module Name:    src
Committed By:   riastradh
Date:           Mon May 20 19:36:30 UTC 2024

Modified Files:
        src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io:
            basic_file_stdio.cc

Log Message:
libstdc++: Don't try to fflush stdin in gcc.old libstdc++ either.

PR lib/58206
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114879


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
    src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc
diff -u src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc:1.13 src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc:1.14
--- src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc:1.13	Mon Feb 20 02:11:45 2023
+++ src/external/gpl3/gcc.old/dist/libstdc++-v3/config/io/basic_file_stdio.cc	Mon May 20 19:36:30 2024
@@ -190,7 +190,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
   { this->close(); }
 
   __basic_file<char>*
-  __basic_file<char>::sys_open(__c_file* __file, ios_base::openmode)
+  __basic_file<char>::sys_open(__c_file* __file, ios_base::openmode __mode)
   {
     __basic_file* __ret = NULL;
     if (!this->is_open() && __file)
@@ -199,7 +199,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 	// POSIX guarantees that fflush sets errno on error, but C doesn't.
 	errno = 0;
 	do
-	  __err = fflush(__file);
+	  __err = (__mode == std::ios_base::in ? 0 : fflush(__file));
 	while (__err && errno == EINTR);
 	errno = __save_errno;
 	if (!__err)

Reply via email to