[all-commits] [llvm/llvm-project] 92bd6e: [libc] Reland add getc, ungetc, fflush to enable l...

Volodymyr Turanskyy via All-commits all-commits at lists.llvm.org
Tue Mar 3 01:23:01 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 92bd6eee4db36d931f5c0ca7c9614a22c9b08a63
      https://github.com/llvm/llvm-project/commit/92bd6eee4db36d931f5c0ca7c9614a22c9b08a63
  Author: Volodymyr Turanskyy <vturanskyy at gmail.com>
  Date:   2026-03-03 (Tue, 03 Mar 2026)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/src/stdio/baremetal/CMakeLists.txt
    A libc/src/stdio/baremetal/fflush.cpp
    A libc/src/stdio/baremetal/file_internal.cpp
    M libc/src/stdio/baremetal/file_internal.h
    M libc/src/stdio/baremetal/getc.cpp
    A libc/src/stdio/baremetal/ungetc.cpp
    M libc/src/stdio/baremetal/vfscanf_internal.h

  Log Message:
  -----------
  [libc] Reland add getc, ungetc, fflush to enable libc++ iostream on baremetal (#183556)

After https://github.com/llvm/llvm-project/pull/168931 landed getc,
ungetc and fflush are still missing at link time while trying to make
libc++ std::cout work with LLVM libc on baremetal.

ungetc implementation is very minimal only to cover the current standard
streams implementation from the patch above.

The original PR https://github.com/llvm/llvm-project/pull/175530 caused
build failure on Windows because of too long command line in the
generated *.bat file which was fixed by
https://github.com/llvm/llvm-project/issues/182374



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list