[libc-commits] [libc] [libc] Add printf error handling (PR #162876)

Michael Jones via libc-commits libc-commits at lists.llvm.org
Fri Oct 31 10:04:21 PDT 2025


================
@@ -78,6 +83,23 @@ TEST(LlvmLibcFPrintfTest, WriteToFile) {
   written =
       LIBC_NAMESPACE::fprintf(file, "Writing to a read only file should fail.");
   EXPECT_LT(written, 0);
+  ASSERT_ERRNO_EQ(EBADF);
+
+  ASSERT_EQ(printf_test::fclose(file), 0);
+}
+
+#ifndef LIBC_COPT_PRINTF_NO_NULLPTR_CHECKS
+TEST(LlvmLibcFPrintfTest, NullPtrCheck) {
+  const char *FILENAME = APPEND_LIBC_TEST("fprintf_nullptr.test");
+  auto FILE_PATH = libc_make_test_file_path(FILENAME);
+
+  ::FILE *file = printf_test::fopen(FILE_PATH, "w");
+  ASSERT_FALSE(file == nullptr);
+
+  int ret = LIBC_NAMESPACE::fprintf(file, "hello %n", (int *)nullptr);
----------------
michaelrj-google wrote:

prefer C++ style casts instead of C style casts.

https://github.com/llvm/llvm-project/pull/162876


More information about the libc-commits mailing list