[libcxx-commits] [libcxx] [libc++] Fix missing #includes (PR #130536)
via libcxx-commits
libcxx-commits at lists.llvm.org
Sun Mar 9 18:17:27 PDT 2025
https://github.com/matts1 created https://github.com/llvm/llvm-project/pull/130536
Adds missing includes that were detected when I tried to build libc++ as a module.
Working towards #127012
>From db150e7094d098ddca13868b640b63cc11fa1f2b Mon Sep 17 00:00:00 2001
From: Matt Stark <msta at google.com>
Date: Mon, 10 Mar 2025 12:09:49 +1100
Subject: [PATCH] [libc++] Fix missing #includes
Working towards #127012
---
libcxx/include/__iterator/wrap_iter.h | 1 +
libcxx/src/condition_variable.cpp | 4 ++++
libcxx/src/filesystem/directory_iterator.cpp | 1 +
libcxx/src/filesystem/error.h | 1 +
libcxx/src/filesystem/filesystem_clock.cpp | 1 +
libcxx/src/filesystem/filesystem_error.cpp | 1 +
libcxx/src/filesystem/operations.cpp | 1 +
libcxx/src/include/ryu/common.h | 1 +
libcxx/src/memory.cpp | 2 ++
libcxx/src/mutex.cpp | 1 +
libcxx/src/random.cpp | 1 +
libcxx/src/ryu/d2fixed.cpp | 1 +
libcxx/src/ryu/d2s.cpp | 1 +
libcxx/src/ryu/f2s.cpp | 2 ++
libcxx/src/thread.cpp | 2 ++
15 files changed, 21 insertions(+)
diff --git a/libcxx/include/__iterator/wrap_iter.h b/libcxx/include/__iterator/wrap_iter.h
index 966c4675b7049..f0400e663de49 100644
--- a/libcxx/include/__iterator/wrap_iter.h
+++ b/libcxx/include/__iterator/wrap_iter.h
@@ -24,6 +24,7 @@
#include <__type_traits/is_convertible.h>
#include <__type_traits/is_same.h>
#include <__type_traits/make_const_lvalue_ref.h>
+#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
diff --git a/libcxx/src/condition_variable.cpp b/libcxx/src/condition_variable.cpp
index b3747603dd34f..3d241a7532cdc 100644
--- a/libcxx/src/condition_variable.cpp
+++ b/libcxx/src/condition_variable.cpp
@@ -6,8 +6,12 @@
//
//===----------------------------------------------------------------------===//
+#include <chrono>
#include <condition_variable>
+#include <limits>
+#include <ratio>
#include <thread>
+#include <__system_error/throw_system_error.h>
#if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
# pragma comment(lib, "pthread")
diff --git a/libcxx/src/filesystem/directory_iterator.cpp b/libcxx/src/filesystem/directory_iterator.cpp
index 7e8e40d17f7a0..7d00c4933fc3e 100644
--- a/libcxx/src/filesystem/directory_iterator.cpp
+++ b/libcxx/src/filesystem/directory_iterator.cpp
@@ -8,6 +8,7 @@
#include <__assert>
#include <__config>
+#include <__memory/shared_ptr.h>
#include <errno.h>
#include <filesystem>
#include <stack>
diff --git a/libcxx/src/filesystem/error.h b/libcxx/src/filesystem/error.h
index 7d81d4b6d2143..52a18b2becdbf 100644
--- a/libcxx/src/filesystem/error.h
+++ b/libcxx/src/filesystem/error.h
@@ -10,6 +10,7 @@
#define FILESYSTEM_ERROR_H
#include <__assert>
+#include <__chrono/time_point.h>
#include <__config>
#include <cerrno>
#include <cstdarg>
diff --git a/libcxx/src/filesystem/filesystem_clock.cpp b/libcxx/src/filesystem/filesystem_clock.cpp
index bec082f61c9d3..0923342989bea 100644
--- a/libcxx/src/filesystem/filesystem_clock.cpp
+++ b/libcxx/src/filesystem/filesystem_clock.cpp
@@ -10,6 +10,7 @@
#include <__system_error/throw_system_error.h>
#include <chrono>
#include <filesystem>
+#include <ratio>
#include <time.h>
#if defined(_LIBCPP_WIN32API)
diff --git a/libcxx/src/filesystem/filesystem_error.cpp b/libcxx/src/filesystem/filesystem_error.cpp
index 456b902c33154..0d8185fb5c3aa 100644
--- a/libcxx/src/filesystem/filesystem_error.cpp
+++ b/libcxx/src/filesystem/filesystem_error.cpp
@@ -7,6 +7,7 @@
//===----------------------------------------------------------------------===//
#include <__config>
+#include <__memory/shared_ptr.h>
#include <__utility/unreachable.h>
#include <filesystem>
#include <system_error>
diff --git a/libcxx/src/filesystem/operations.cpp b/libcxx/src/filesystem/operations.cpp
index 23c1c281ba1c7..b71f94a89d6df 100644
--- a/libcxx/src/filesystem/operations.cpp
+++ b/libcxx/src/filesystem/operations.cpp
@@ -6,6 +6,7 @@
//
//===----------------------------------------------------------------------===//
+#include <__algorithm/copy.h>
#include <__assert>
#include <__config>
#include <__utility/unreachable.h>
diff --git a/libcxx/src/include/ryu/common.h b/libcxx/src/include/ryu/common.h
index d5168d8710bf2..591ec414f850d 100644
--- a/libcxx/src/include/ryu/common.h
+++ b/libcxx/src/include/ryu/common.h
@@ -44,6 +44,7 @@
#include <__assert>
#include <__config>
+#include <cstdint>
#include <cstring>
_LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/libcxx/src/memory.cpp b/libcxx/src/memory.cpp
index 16190c242c148..9be40cb9c1285 100644
--- a/libcxx/src/memory.cpp
+++ b/libcxx/src/memory.cpp
@@ -11,7 +11,9 @@
# define _LIBCPP_SHARED_PTR_DEFINE_LEGACY_INLINE_FUNCTIONS
#endif
+#include <__functional/hash.h>
#include <memory>
+#include <typeinfo>
#if _LIBCPP_HAS_THREADS
# include <mutex>
diff --git a/libcxx/src/mutex.cpp b/libcxx/src/mutex.cpp
index b2193e2335ee2..5b1e7da121fc4 100644
--- a/libcxx/src/mutex.cpp
+++ b/libcxx/src/mutex.cpp
@@ -7,6 +7,7 @@
//===----------------------------------------------------------------------===//
#include <__assert>
+#include <__system_error/throw_system_error.h>
#include <__thread/id.h>
#include <__utility/exception_guard.h>
#include <limits>
diff --git a/libcxx/src/random.cpp b/libcxx/src/random.cpp
index ff53a3d786dd5..5c6644811bfee 100644
--- a/libcxx/src/random.cpp
+++ b/libcxx/src/random.cpp
@@ -16,6 +16,7 @@
#include <__system_error/throw_system_error.h>
#include <limits>
#include <random>
+#include <string>
#include <errno.h>
#include <stdio.h>
diff --git a/libcxx/src/ryu/d2fixed.cpp b/libcxx/src/ryu/d2fixed.cpp
index 4cfc39535988e..abfa340830b1b 100644
--- a/libcxx/src/ryu/d2fixed.cpp
+++ b/libcxx/src/ryu/d2fixed.cpp
@@ -42,6 +42,7 @@
#include <__assert>
#include <__config>
#include <charconv>
+#include <cstddef>
#include <cstring>
#include "include/ryu/common.h"
diff --git a/libcxx/src/ryu/d2s.cpp b/libcxx/src/ryu/d2s.cpp
index 5b80ed8a709d8..c0d11107f880b 100644
--- a/libcxx/src/ryu/d2s.cpp
+++ b/libcxx/src/ryu/d2s.cpp
@@ -42,6 +42,7 @@
#include <__assert>
#include <__config>
#include <charconv>
+#include <cstddef>
#include "include/ryu/common.h"
#include "include/ryu/d2fixed.h"
diff --git a/libcxx/src/ryu/f2s.cpp b/libcxx/src/ryu/f2s.cpp
index f42fbd68c91d2..f1f8cdf83f86a 100644
--- a/libcxx/src/ryu/f2s.cpp
+++ b/libcxx/src/ryu/f2s.cpp
@@ -42,6 +42,8 @@
#include <__assert>
#include <__config>
#include <charconv>
+#include <cstdint>
+#include <cstddef>
#include "include/ryu/common.h"
#include "include/ryu/d2fixed.h"
diff --git a/libcxx/src/thread.cpp b/libcxx/src/thread.cpp
index db40d9df4f233..028d36e3bfb37 100644
--- a/libcxx/src/thread.cpp
+++ b/libcxx/src/thread.cpp
@@ -6,8 +6,10 @@
//
//===----------------------------------------------------------------------===//
+#include <__system_error/throw_system_error.h>
#include <__thread/poll_with_backoff.h>
#include <__thread/timed_backoff_policy.h>
+#include <__utility/pair.h>
#include <exception>
#include <future>
#include <limits>
More information about the libcxx-commits
mailing list