<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/60509>60509</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            ofstream.rdbuf()->pubsetbuf(nullptr, 0) do not enables "auto-flush" mode
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          morozyto
      </td>
    </tr>
</table>

<pre>
    Hi!


I have got this code:
```cpp
#include <fstream>
#include <vector>

int main() {
    const std::string path = "/tmp/some_random_path"; // this file do not exist before running of program
    std::ofstream file_output;
 file_output.rdbuf()->pubsetbuf(nullptr, 0);
 file_output.open(path);
    if (!file_output.good()) {
        return 1;
    }
    file_output.write("abc", 3);
    if (!file_output.good()) {
        return 2;
    }


 std::ifstream file_input{path, std::ios::binary};
    if (!file_input.is_open()) {
        return 3;
    }
    
 file_input.peek();
    if (file_input.eof()) {
        return 4;  // libc++
    }

    return 0; // libstdc++11
}
```

I tried to compile it with againt libstdc++11 ( clang++ main.cpp ) and against libc++ (clang++ -stdlib=libc++ main.cpp). I expect success return code for both libc++ and libstdc++11 (because of expectation of no-buffering with `rdbuf()->pubsetbuf(nullptr, 0)`), but it's not work for libc++. Is it valid?

My specs:
Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal
Ubuntu clang version 15.0.7
Target: x86_64-pc-linux-gnu 
Thread model: posix
InstalledDir: /usr/bin 
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/10 
Selected multilib: .;@m64
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysVU1v4zgP_jXKhYghy_kYH3Jok_H7DrB72Zk9F7JEO9qRJUOi-rG_fiE7adyZFosBtjDUmCIfPXxMUjJG0zvEA9ves-1pJROdfTgMPvi_X8ivWq9fDv83TJSMnxi_W65f4CwfEXpPQGcTQXmNrLq67Pj8qHG8WERlnLJJI7Dq2EUKKAdWfX5v9xEV-XDbnFbjCAZpHBOfmKiB7e9nOwCA8i4SRNKZQHUXKRjXwyjpDKw6AROCiYaGkYkm-gEfgnTaDw_ZIe9V98BEw0QzZ9IZi6A9OE-AzyYStNj5gBCScxnYdzAG3wc53Ci8Hu4vuU0wDz7RmIhVV7ILYxF0m7o5nTWrPo-pjUizySVrRwpMHIEzUb8f70fMasxZLHwAwHQwAZdL_957PR_3k4CM1wEpBQflGxy2P91ellhPwRBOYEK2ahL4CNV_R0O8T2O53iQ3byQ3Liu-v591OS7cfJx_tMbJ8JJBPyY7oRQmPlxUfo9u_rvwrT6WbfnlZtQR8fsF8mcCCz_03b-fvMnle61fa_LHuM_PR-ItQvmi8q1pI-lLcHnt99fQaz-_nQAUDGogD8oPY-4aQ_Bk6Ayyl7lffwDN6YGy0vWzZernQo0j5ASl03NcpEUeOWYZso6krWlZdVr4XHGYqAv4Avg8oiKISSmM8ZptHlDQ-QCtp_PyhHzwO0xbVDJFzN0-A0oy3uVX59dt6jqcpsyUL9vxX-jm3bSKI7SJwBAT-zgNmycfvk8Mb-QK-BKzqo_SGs2qZqn_7y8QR1Txder-2SZHCU4YVTBjZsuqO7hYBS_4ptjAb9--wh9oUcY8rmczHL1GJ4fJ0nkl7RvASX94xBCzAOW24MV-dvgmQ4-Uo54_7R52m_Wo1ta49LzuXbpU_rdzQKlh8Bpt9hx9NM-XCnKRpLWoTybkLSaaFAMTTWvcJforWlSEGv53PIKZ_eU1taU_E01RMNHk4hBNrxQTzYXUKyMmmpL_CDwkS2YqqTsockNu-LDbrPSh0nVVyxUeyt1-uxFVXder86Hju27foeha3G073Jei3Je4k92Go9RSrMxBcFFxwauyrKqyLqSqdNmWGrtPdYucsw3HQRpbWPs4FD70KxNjwsOOb3m9srJFG6cbWQiHTzBt5gm7Pa3CIces29RHtuHWRIo3FDJk8XC9f37henm97JxsLcZ8X8pEft3ZFPMFOX27VQr2cCYap3qbhkZv6JzaQvkh624fr__WY_B_oSImmol8ZKKZkvsnAAD__6XmfM8">