[libc-commits] [PATCH] D126329: [libc] Add global stdout and stderr	objects.
    Siva Chandra via Phabricator via libc-commits 
    libc-commits at lists.llvm.org
       
    Tue May 24 22:58:16 PDT 2022
    
    
  
sivachandra marked an inline comment as done.
sivachandra added inline comments.
================
Comment at: libc/src/__support/File/linux_file.cpp:169-170
+constexpr size_t STDOUT_BUFFER_SIZE = 1024;
+char stdout_buffer[STDOUT_BUFFER_SIZE];
+LinuxFile StdOut(1, stdout_buffer, STDOUT_BUFFER_SIZE, 0, false,
+                 File::ModeFlags(File::OpenMode::APPEND));
----------------
abrachet wrote:
> These should probably be static
Yes, fixed!
================
Comment at: libc/src/__support/File/linux_file.cpp:176
+char stderr_buffer[STDOUT_BUFFER_SIZE];
+LinuxFile StdErr(1, stderr_buffer, STDERR_BUFFER_SIZE, 0, false,
+                 File::ModeFlags(File::OpenMode::WRITE));
----------------
abrachet wrote:
> I don't know what values are ok for `buffer_mode` but stderr would logically have a different buffer mode from stdout because of no line buffering.
> 
> Why does stderr have `OpenMode::WRITE` and stdout has `OpenMode::APPEND`
About buffering mode, we do not have line buffering support yet so I just left the value at 0. I have added a TODO to update that when we add line buffering support.
About `WRITE` vs `APPEND`, My intention was to put `APPEND` on both but I was playing with `WRITE` on one of them but forgot to put it back to `APPEND`. I have updated both to `APPEND` now.
Overall, this is a total case of copy-paste oversight. Sorry about that.
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126329/new/
https://reviews.llvm.org/D126329
    
    
More information about the libc-commits
mailing list