[libc++] Replace `#include ""` with `<>` in libcxx/src/. NFCI.

Our best guess is that the two syntaxes should have exactly equivalent
effects, so, let's be consistent with what we do in libcxx/include/.

I've left `#include "include/x.h"` and `#include "../y.h"` alone
because I'm less sure that they're interchangeable, and they aren't
inconsistent with libcxx/include/ because libcxx/include/ never
does that kind of thing.

Also, use the `_LIBCPP_PUSH_MACROS/POP_MACROS` dance for `<__undef_macros>`,
even though it's technically unnecessary in a standalone .cpp file,
just so we have consistently one way to do it.

Differential Revision: https://reviews.llvm.org/D119561

NOKEYCHECK=True
GitOrigin-RevId: bbb0f2c759a16f2fb4e1d74795b790cf0c170620
diff --git a/src/algorithm.cpp b/src/algorithm.cpp
index 4cc7c27..decc841 100644
--- a/src/algorithm.cpp
+++ b/src/algorithm.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "algorithm"
+#include <algorithm>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/any.cpp b/src/any.cpp
index 2939fe2..9a101b4 100644
--- a/src/any.cpp
+++ b/src/any.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "any"
+#include <any>
 
 namespace std {
 const char* bad_any_cast::what() const noexcept {
diff --git a/src/bind.cpp b/src/bind.cpp
index a54df2c..0e217e5 100644
--- a/src/bind.cpp
+++ b/src/bind.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "functional"
+#include <functional>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/charconv.cpp b/src/charconv.cpp
index 60ec3ec..9537b42 100644
--- a/src/charconv.cpp
+++ b/src/charconv.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "charconv"
+#include <charconv>
 #include <string.h>
 
 #include "include/ryu/digit_table.h"
diff --git a/src/chrono.cpp b/src/chrono.cpp
index 4f2d510..0af89d6 100644
--- a/src/chrono.cpp
+++ b/src/chrono.cpp
@@ -12,9 +12,9 @@
 #define _LARGE_TIME_API
 #endif
 
-#include "chrono"
-#include "cerrno"        // errno
-#include "system_error"  // __throw_system_error
+#include <cerrno>        // errno
+#include <chrono>
+#include <system_error>  // __throw_system_error
 
 #if defined(__MVS__)
 #include <__support/ibm/gettod_zos.h> // gettimeofdayMonotonic
diff --git a/src/condition_variable.cpp b/src/condition_variable.cpp
index 0ade56b..b17c4cf 100644
--- a/src/condition_variable.cpp
+++ b/src/condition_variable.cpp
@@ -6,19 +6,21 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
+#include <__config>
 
 #ifndef _LIBCPP_HAS_NO_THREADS
 
-#include "condition_variable"
-#include "thread"
-#include "system_error"
-#include "__undef_macros"
+#include <condition_variable>
+#include <thread>
+#include <system_error>
 
 #if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#pragma comment(lib, "pthread")
+#  pragma comment(lib, "pthread")
 #endif
 
+_LIBCPP_PUSH_MACROS
+#include <__undef_macros>
+
 _LIBCPP_BEGIN_NAMESPACE_STD
 
 // ~condition_variable is defined elsewhere.
@@ -90,4 +92,6 @@
 
 _LIBCPP_END_NAMESPACE_STD
 
+_LIBCPP_POP_MACROS
+
 #endif // !_LIBCPP_HAS_NO_THREADS
diff --git a/src/condition_variable_destructor.cpp b/src/condition_variable_destructor.cpp
index 350e6b7..c217a09 100644
--- a/src/condition_variable_destructor.cpp
+++ b/src/condition_variable_destructor.cpp
@@ -11,8 +11,8 @@
 // On some platforms ~condition_variable has been made trivial and the
 // definition is only provided for ABI compatibility.
 
-#include "__config"
-#include "__threading_support"
+#include <__config>
+#include <__threading_support>
 
 #if !defined(_LIBCPP_HAS_NO_THREADS)
 # if _LIBCPP_ABI_VERSION == 1 || !defined(_LIBCPP_HAS_TRIVIAL_CONDVAR_DESTRUCTION)
diff --git a/src/debug.cpp b/src/debug.cpp
index 15d8fdb..14a75b1 100644
--- a/src/debug.cpp
+++ b/src/debug.cpp
@@ -6,18 +6,19 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
-#include "__debug"
-#include "functional"
-#include "algorithm"
-#include "string"
-#include "cstdio"
-#include "__hash_table"
+#include <__config>
+#include <__debug>
+#include <__hash_table>
+#include <algorithm>
+#include <cstdio>
+#include <functional>
+#include <string>
+
 #ifndef _LIBCPP_HAS_NO_THREADS
-#include "mutex"
-#if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#pragma comment(lib, "pthread")
-#endif
+#  include <mutex>
+#  if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
+#    pragma comment(lib, "pthread")
+#  endif
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/exception.cpp b/src/exception.cpp
index efb56c1..e5d6b9e 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -6,9 +6,9 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "exception"
-#include "new"
-#include "typeinfo"
+#include <exception>
+#include <new>
+#include <typeinfo>
 
 #if defined(LIBCXXRT) || defined(LIBCXX_BUILDING_LIBCXXABI)
   #include <cxxabi.h>
diff --git a/src/experimental/memory_resource.cpp b/src/experimental/memory_resource.cpp
index af86079..e9fb5b5 100644
--- a/src/experimental/memory_resource.cpp
+++ b/src/experimental/memory_resource.cpp
@@ -6,15 +6,15 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "experimental/memory_resource"
+#include <experimental/memory_resource>
 
 #ifndef _LIBCPP_HAS_NO_ATOMIC_HEADER
-#include "atomic"
+#  include <atomic>
 #elif !defined(_LIBCPP_HAS_NO_THREADS)
-#include "mutex"
-#if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#pragma comment(lib, "pthread")
-#endif
+#  include <mutex>
+#  if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
+#    pragma comment(lib, "pthread")
+#  endif
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR
diff --git a/src/filesystem/directory_iterator.cpp b/src/filesystem/directory_iterator.cpp
index fa793f6..c9294f7 100644
--- a/src/filesystem/directory_iterator.cpp
+++ b/src/filesystem/directory_iterator.cpp
@@ -6,10 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
-#include "filesystem"
-#include "stack"
+#include <__config>
 #include <errno.h>
+#include <filesystem>
+#include <stack>
 
 #include "filesystem_common.h"
 
diff --git a/src/filesystem/filesystem_common.h b/src/filesystem/filesystem_common.h
index 211b778..9415356 100644
--- a/src/filesystem/filesystem_common.h
+++ b/src/filesystem/filesystem_common.h
@@ -9,15 +9,15 @@
 #ifndef FILESYSTEM_COMMON_H
 #define FILESYSTEM_COMMON_H
 
-#include "__config"
-#include "array"
-#include "chrono"
-#include "climits"
-#include "cstdarg"
-#include "ctime"
-#include "filesystem"
-#include "ratio"
-#include "system_error"
+#include <__config>
+#include <array>
+#include <chrono>
+#include <climits>
+#include <cstdarg>
+#include <ctime>
+#include <filesystem>
+#include <ratio>
+#include <system_error>
 #include <utility>
 
 #if defined(_LIBCPP_WIN32API)
diff --git a/src/filesystem/int128_builtins.cpp b/src/filesystem/int128_builtins.cpp
index ed531ee..f003da2 100644
--- a/src/filesystem/int128_builtins.cpp
+++ b/src/filesystem/int128_builtins.cpp
@@ -13,8 +13,8 @@
  *
  * ===----------------------------------------------------------------------===
  */
-#include "__config"
-#include "climits"
+#include <__config>
+#include <climits>
 
 #if !defined(_LIBCPP_HAS_NO_INT128)
 
diff --git a/src/filesystem/operations.cpp b/src/filesystem/operations.cpp
index 244cc98..57e2539 100644
--- a/src/filesystem/operations.cpp
+++ b/src/filesystem/operations.cpp
@@ -7,14 +7,14 @@
 //===----------------------------------------------------------------------===//
 
 #include <__utility/unreachable.h>
-#include "filesystem"
-#include "array"
-#include "iterator"
-#include "string_view"
-#include "type_traits"
-#include "vector"
-#include "cstdlib"
-#include "climits"
+#include <array>
+#include <climits>
+#include <cstdlib>
+#include <filesystem>
+#include <iterator>
+#include <string_view>
+#include <type_traits>
+#include <vector>
 
 #include "filesystem_common.h"
 
@@ -40,7 +40,7 @@
 # include <copyfile.h>
 # define _LIBCPP_FILESYSTEM_USE_COPYFILE
 #else
-# include "fstream"
+# include <fstream>
 # define _LIBCPP_FILESYSTEM_USE_FSTREAM
 #endif
 
diff --git a/src/filesystem/posix_compat.h b/src/filesystem/posix_compat.h
index f5c8ec3..6cd6650 100644
--- a/src/filesystem/posix_compat.h
+++ b/src/filesystem/posix_compat.h
@@ -23,7 +23,7 @@
 #ifndef POSIX_COMPAT_H
 #define POSIX_COMPAT_H
 
-#include "filesystem"
+#include <filesystem>
 
 #include "filesystem_common.h"
 
diff --git a/src/format.cpp b/src/format.cpp
index 2ebec28..cdbcbf8 100644
--- a/src/format.cpp
+++ b/src/format.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "format"
+#include <format>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/functional.cpp b/src/functional.cpp
index d8cfaa7..ca1079c 100644
--- a/src/functional.cpp
+++ b/src/functional.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "functional"
+#include <functional>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/future.cpp b/src/future.cpp
index 07ae938..cdaa938 100644
--- a/src/future.cpp
+++ b/src/future.cpp
@@ -6,12 +6,12 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
+#include <__config>
 
 #ifndef _LIBCPP_HAS_NO_THREADS
 
-#include "future"
-#include "string"
+#include <future>
+#include <string>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/hash.cpp b/src/hash.cpp
index daf276f..96cbd38 100644
--- a/src/hash.cpp
+++ b/src/hash.cpp
@@ -6,10 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__hash_table"
-#include "algorithm"
-#include "stdexcept"
-#include "type_traits"
+#include <__hash_table>
+#include <algorithm>
+#include <stdexcept>
+#include <type_traits>
 
 _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wtautological-constant-out-of-range-compare")
 
diff --git a/src/include/atomic_support.h b/src/include/atomic_support.h
index 5a745a2..3e73f2c 100644
--- a/src/include/atomic_support.h
+++ b/src/include/atomic_support.h
@@ -9,8 +9,8 @@
 #ifndef ATOMIC_SUPPORT_H
 #define ATOMIC_SUPPORT_H
 
-#include "__config"
-#include "memory" // for __libcpp_relaxed_load
+#include <__config>
+#include <memory> // for __libcpp_relaxed_load
 
 #if defined(__clang__) && __has_builtin(__atomic_load_n)             \
                        && __has_builtin(__atomic_store_n)            \
diff --git a/src/include/ryu/d2fixed.h b/src/include/ryu/d2fixed.h
index e495c11..b8862de 100644
--- a/src/include/ryu/d2fixed.h
+++ b/src/include/ryu/d2fixed.h
@@ -42,8 +42,8 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
-#include "cstdint"
+#include <__config>
+#include <cstdint>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/d2fixed_full_table.h b/src/include/ryu/d2fixed_full_table.h
index 7181cd8..a63d6f2 100644
--- a/src/include/ryu/d2fixed_full_table.h
+++ b/src/include/ryu/d2fixed_full_table.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/d2s.h b/src/include/ryu/d2s.h
index 15d50fd..3d9f10c 100644
--- a/src/include/ryu/d2s.h
+++ b/src/include/ryu/d2s.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/d2s_full_table.h b/src/include/ryu/d2s_full_table.h
index 106fef0..96307f6 100644
--- a/src/include/ryu/d2s_full_table.h
+++ b/src/include/ryu/d2s_full_table.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/d2s_intrinsics.h b/src/include/ryu/d2s_intrinsics.h
index 9591281..093d858 100644
--- a/src/include/ryu/d2s_intrinsics.h
+++ b/src/include/ryu/d2s_intrinsics.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 #include "include/ryu/ryu.h"
 
diff --git a/src/include/ryu/digit_table.h b/src/include/ryu/digit_table.h
index 3962f66..e4ee94c 100644
--- a/src/include/ryu/digit_table.h
+++ b/src/include/ryu/digit_table.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/f2s.h b/src/include/ryu/f2s.h
index 80fdcd4..be304c2 100644
--- a/src/include/ryu/f2s.h
+++ b/src/include/ryu/f2s.h
@@ -42,7 +42,7 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
+#include <__config>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/include/ryu/ryu.h b/src/include/ryu/ryu.h
index 04d4f2c..cb44bd3 100644
--- a/src/include/ryu/ryu.h
+++ b/src/include/ryu/ryu.h
@@ -44,14 +44,15 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__charconv/chars_format.h"
-#include "__charconv/to_chars_result.h"
-#include "__config"
-#include "__debug"
-#include "__errc"
-#include "cstdint"
-#include "cstring"
-#include "type_traits"
+#include <__charconv/chars_format.h>
+#include <__charconv/to_chars_result.h>
+#include <__config>
+#include <__debug>
+#include <__errc>
+#include <cstdint>
+#include <cstring>
+#include <type_traits>
+
 #include "include/ryu/f2s.h"
 #include "include/ryu/d2s.h"
 #include "include/ryu/d2fixed.h"
diff --git a/src/include/to_chars_floating_point.h b/src/include/to_chars_floating_point.h
index 081d671..3f8d361 100644
--- a/src/include/to_chars_floating_point.h
+++ b/src/include/to_chars_floating_point.h
@@ -17,16 +17,17 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__algorithm/find.h"
-#include "__algorithm/find_if.h"
-#include "__algorithm/lower_bound.h"
-#include "__algorithm/min.h"
-#include "__config"
-#include "__iterator/access.h"
-#include "__iterator/size.h"
-#include "bit"
-#include "cfloat"
-#include "climits"
+#include <__algorithm/find.h>
+#include <__algorithm/find_if.h>
+#include <__algorithm/lower_bound.h>
+#include <__algorithm/min.h>
+#include <__config>
+#include <__iterator/access.h>
+#include <__iterator/size.h>
+#include <bit>
+#include <cfloat>
+#include <climits>
+
 #include "include/ryu/ryu.h"
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/ios.cpp b/src/ios.cpp
index 56fbcca..218b27f 100644
--- a/src/ios.cpp
+++ b/src/ios.cpp
@@ -6,20 +6,20 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
-
-#include "ios"
-
+#include <__config>
+#include <__locale>
+#include <algorithm>
+#include <ios>
+#include <limits>
+#include <memory>
+#include <new>
 #include <stdlib.h>
+#include <string>
 
-#include "__locale"
-#include "algorithm"
 #include "include/config_elast.h"
-#include "limits"
-#include "memory"
-#include "new"
-#include "string"
-#include "__undef_macros"
+
+_LIBCPP_PUSH_MACROS
+#include <__undef_macros>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
@@ -439,3 +439,5 @@
 }
 
 _LIBCPP_END_NAMESPACE_STD
+
+_LIBCPP_POP_MACROS
diff --git a/src/ios.instantiations.cpp b/src/ios.instantiations.cpp
index e1189d0..2ff7057 100644
--- a/src/ios.instantiations.cpp
+++ b/src/ios.instantiations.cpp
@@ -6,14 +6,13 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
-#include "fstream"
-#include "ios"
-#include "istream"
-#include "ostream"
-#include "sstream"
-#include "streambuf"
-
+#include <__config>
+#include <fstream>
+#include <ios>
+#include <istream>
+#include <ostream>
+#include <sstream>
+#include <streambuf>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/iostream.cpp b/src/iostream.cpp
index d87bf7a..6164fd7 100644
--- a/src/iostream.cpp
+++ b/src/iostream.cpp
@@ -6,10 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__std_stream"
-#include "__locale"
-#include "string"
-#include "new"
+#include <__locale>
+#include <__std_stream>
+#include <new>
+#include <string>
 
 #define _str(s) #s
 #define str(s) _str(s)
diff --git a/src/legacy_pointer_safety.cpp b/src/legacy_pointer_safety.cpp
index 34f5613..5d2b04c 100644
--- a/src/legacy_pointer_safety.cpp
+++ b/src/legacy_pointer_safety.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
+#include <__config>
 #include <memory>
 
 // Support for garbage collection was removed in C++23 by https://wg21.link/P2186R2. Libc++ implements
diff --git a/src/locale.cpp b/src/locale.cpp
index a45dcbf..bd3f873 100644
--- a/src/locale.cpp
+++ b/src/locale.cpp
@@ -13,20 +13,20 @@
 #endif
 
 #include <__utility/unreachable.h>
-#include "algorithm"
-#include "clocale"
-#include "codecvt"
-#include "cstdio"
-#include "cstdlib"
-#include "cstring"
-#include "locale"
-#include "string"
-#include "type_traits"
-#include "typeinfo"
-#include "vector"
+#include <algorithm>
+#include <clocale>
+#include <codecvt>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <locale>
+#include <string>
+#include <type_traits>
+#include <typeinfo>
+#include <vector>
 
 #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
-#   include "cwctype"
+#   include <cwctype>
 #endif
 
 #if defined(_AIX)
@@ -45,12 +45,14 @@
 
 #include "include/atomic_support.h"
 #include "include/sso_allocator.h"
-#include "__undef_macros"
 
 // On Linux, wint_t and wchar_t have different signed-ness, and this causes
 // lots of noise in the build log, but no bugs that I know of.
 _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wsign-conversion")
 
+_LIBCPP_PUSH_MACROS
+#include <__undef_macros>
+
 _LIBCPP_BEGIN_NAMESPACE_STD
 
 struct __libcpp_unique_locale {
@@ -6587,3 +6589,5 @@
 #endif
 
 _LIBCPP_END_NAMESPACE_STD
+
+_LIBCPP_POP_MACROS
diff --git a/src/memory.cpp b/src/memory.cpp
index e998e97..1b8c6b7 100644
--- a/src/memory.cpp
+++ b/src/memory.cpp
@@ -6,14 +6,16 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "memory"
+#include <memory>
+
 #ifndef _LIBCPP_HAS_NO_THREADS
-#   include "mutex"
-#   include "thread"
-#   if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#       pragma comment(lib, "pthread")
-#   endif
+#  include <mutex>
+#  include <thread>
+#  if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
+#    pragma comment(lib, "pthread")
+#  endif
 #endif
+
 #include "include/atomic_support.h"
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/mutex.cpp b/src/mutex.cpp
index 6669e76..9e780aa 100644
--- a/src/mutex.cpp
+++ b/src/mutex.cpp
@@ -6,19 +6,23 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "mutex"
-#include "limits"
-#include "system_error"
+#include <limits>
+#include <mutex>
+#include <system_error>
+
 #include "include/atomic_support.h"
-#include "__undef_macros"
 
 #ifndef _LIBCPP_HAS_NO_THREADS
-#if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#pragma comment(lib, "pthread")
-#endif
+#  if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
+#    pragma comment(lib, "pthread")
+#  endif
 #endif
 
+_LIBCPP_PUSH_MACROS
+#include <__undef_macros>
+
 _LIBCPP_BEGIN_NAMESPACE_STD
+
 #ifndef _LIBCPP_HAS_NO_THREADS
 
 const defer_lock_t  defer_lock{};
@@ -258,3 +262,5 @@
 }
 
 _LIBCPP_END_NAMESPACE_STD
+
+_LIBCPP_POP_MACROS
diff --git a/src/mutex_destructor.cpp b/src/mutex_destructor.cpp
index e8b1e42..6850b6e 100644
--- a/src/mutex_destructor.cpp
+++ b/src/mutex_destructor.cpp
@@ -16,13 +16,13 @@
 // we re-declare the entire class in this file instead of using
 // _LIBCPP_BUILDING_LIBRARY to change the definition in the headers.
 
-#include "__config"
-#include "__threading_support"
+#include <__config>
+#include <__threading_support>
 
 #if !defined(_LIBCPP_HAS_NO_THREADS)
-#if _LIBCPP_ABI_VERSION == 1 || !defined(_LIBCPP_HAS_TRIVIAL_MUTEX_DESTRUCTION)
-#define NEEDS_MUTEX_DESTRUCTOR
-#endif
+#  if _LIBCPP_ABI_VERSION == 1 || !defined(_LIBCPP_HAS_TRIVIAL_MUTEX_DESTRUCTION)
+#    define NEEDS_MUTEX_DESTRUCTOR
+#  endif
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/new.cpp b/src/new.cpp
index 0a9bee4..48d6f99 100644
--- a/src/new.cpp
+++ b/src/new.cpp
@@ -6,9 +6,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include <new>
 #include <stdlib.h>
 
-#include "new"
 #include "include/atomic_support.h"
 
 #if defined(_LIBCPP_ABI_MICROSOFT)
diff --git a/src/optional.cpp b/src/optional.cpp
index 251ebe2..ac1a0a5 100644
--- a/src/optional.cpp
+++ b/src/optional.cpp
@@ -6,8 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "optional"
-#include "__availability"
+#include <__availability>
+#include <optional>
 
 namespace std
 {
diff --git a/src/random.cpp b/src/random.cpp
index 6472a8d..466b015 100644
--- a/src/random.cpp
+++ b/src/random.cpp
@@ -13,9 +13,9 @@
 #   define _CRT_RAND_S
 #endif // defined(_LIBCPP_USING_WIN32_RANDOM)
 
-#include "limits"
-#include "random"
-#include "system_error"
+#include <limits>
+#include <random>
+#include <system_error>
 
 #if defined(__sun__)
 #   define rename solaris_headers_are_broken
diff --git a/src/random_shuffle.cpp b/src/random_shuffle.cpp
index 753a15f..e9087a9 100644
--- a/src/random_shuffle.cpp
+++ b/src/random_shuffle.cpp
@@ -6,13 +6,14 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "algorithm"
-#include "random"
+#include <algorithm>
+#include <random>
+
 #ifndef _LIBCPP_HAS_NO_THREADS
-#   include "mutex"
-#   if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#       pragma comment(lib, "pthread")
-#   endif
+#  include <mutex>
+#  if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
+#    pragma comment(lib, "pthread")
+#  endif
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/regex.cpp b/src/regex.cpp
index 16ad8f0..e53d324 100644
--- a/src/regex.cpp
+++ b/src/regex.cpp
@@ -6,9 +6,9 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "regex"
-#include "algorithm"
-#include "iterator"
+#include <algorithm>
+#include <iterator>
+#include <regex>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/ryu/d2fixed.cpp b/src/ryu/d2fixed.cpp
index 699f915..bb6d621 100644
--- a/src/ryu/d2fixed.cpp
+++ b/src/ryu/d2fixed.cpp
@@ -39,10 +39,10 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
-#include "charconv"
-#include "cstring"
-#include "system_error"
+#include <__config>
+#include <charconv>
+#include <cstring>
+#include <system_error>
 
 #include "include/ryu/common.h"
 #include "include/ryu/d2fixed.h"
diff --git a/src/ryu/d2s.cpp b/src/ryu/d2s.cpp
index 510b4b8..e22bfa4 100644
--- a/src/ryu/d2s.cpp
+++ b/src/ryu/d2s.cpp
@@ -39,8 +39,8 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
-#include "charconv"
+#include <__config>
+#include <charconv>
 
 #include "include/ryu/common.h"
 #include "include/ryu/d2fixed.h"
diff --git a/src/ryu/f2s.cpp b/src/ryu/f2s.cpp
index 7e10b49..e7d46d2 100644
--- a/src/ryu/f2s.cpp
+++ b/src/ryu/f2s.cpp
@@ -39,8 +39,8 @@
 // Avoid formatting to keep the changes with the original code minimal.
 // clang-format off
 
-#include "__config"
-#include "charconv"
+#include <__config>
+#include <charconv>
 
 #include "include/ryu/common.h"
 #include "include/ryu/d2fixed.h"
diff --git a/src/shared_mutex.cpp b/src/shared_mutex.cpp
index 6a5a738..deb3ced 100644
--- a/src/shared_mutex.cpp
+++ b/src/shared_mutex.cpp
@@ -6,12 +6,13 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
+#include <__config>
+
 #ifndef _LIBCPP_HAS_NO_THREADS
 
-#include "shared_mutex"
+#include <shared_mutex>
 #if defined(__ELF__) && defined(_LIBCPP_LINK_PTHREAD_LIB)
-#pragma comment(lib, "pthread")
+#  pragma comment(lib, "pthread")
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/stdexcept.cpp b/src/stdexcept.cpp
index b9c8970..d08b674 100644
--- a/src/stdexcept.cpp
+++ b/src/stdexcept.cpp
@@ -6,11 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "stdexcept"
-#include "new"
-#include "string"
-#include "system_error"
-
+#include <new>
+#include <stdexcept>
+#include <string>
+#include <system_error>
 
 #ifdef _LIBCPP_ABI_VCRUNTIME
 #include "support/runtime/stdexcept_vcruntime.ipp"
diff --git a/src/string.cpp b/src/string.cpp
index 3cde2e9..db7d7d5 100644
--- a/src/string.cpp
+++ b/src/string.cpp
@@ -6,17 +6,17 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "string"
-#include "charconv"
-#include "cstdlib"
-#include "cerrno"
-#include "limits"
-#include "stdexcept"
+#include <__debug>
+#include <cerrno>
+#include <charconv>
+#include <cstdlib>
+#include <limits>
+#include <stdexcept>
 #include <stdio.h>
-#include "__debug"
+#include <string>
 
 #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
-#   include "cwchar"
+#  include <cwchar>
 #endif
 
 _LIBCPP_BEGIN_NAMESPACE_STD
diff --git a/src/strstream.cpp b/src/strstream.cpp
index fe7e2d4..c3a7eb9 100644
--- a/src/strstream.cpp
+++ b/src/strstream.cpp
@@ -7,13 +7,15 @@
 //===----------------------------------------------------------------------===//
 
 #include <__utility/unreachable.h>
-#include "strstream"
-#include "algorithm"
-#include "climits"
-#include "cstring"
-#include "cstdlib"
-#include "__debug"
-#include "__undef_macros"
+#include <__debug>
+#include <algorithm>
+#include <climits>
+#include <cstdlib>
+#include <cstring>
+#include <strstream>
+
+_LIBCPP_PUSH_MACROS
+#include <__undef_macros>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
@@ -334,3 +336,5 @@
 }
 
 _LIBCPP_END_NAMESPACE_STD
+
+_LIBCPP_POP_MACROS
diff --git a/src/system_error.cpp b/src/system_error.cpp
index 82472cb..1c45702 100644
--- a/src/system_error.cpp
+++ b/src/system_error.cpp
@@ -6,18 +6,17 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
-
-#include "system_error"
+#include <__config>
+#include <__debug>
+#include <cerrno>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <string>
+#include <string.h>
+#include <system_error>
 
 #include "include/config_elast.h"
-#include "cerrno"
-#include "cstring"
-#include "cstdio"
-#include "cstdlib"
-#include "string"
-#include "string.h"
-#include "__debug"
 
 #if defined(__ANDROID__)
 #include <android/api-level.h>
diff --git a/src/thread.cpp b/src/thread.cpp
index 8dddb24..0734659 100644
--- a/src/thread.cpp
+++ b/src/thread.cpp
@@ -6,14 +6,15 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "__config"
+#include <__config>
+
 #ifndef _LIBCPP_HAS_NO_THREADS
 
-#include "thread"
-#include "exception"
-#include "vector"
-#include "future"
-#include "limits"
+#include <exception>
+#include <future>
+#include <limits>
+#include <thread>
+#include <vector>
 
 #if __has_include(<unistd.h>)
 # include <unistd.h> // for sysconf
diff --git a/src/typeinfo.cpp b/src/typeinfo.cpp
index 03eaad7..c7f0a70 100644
--- a/src/typeinfo.cpp
+++ b/src/typeinfo.cpp
@@ -6,9 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "typeinfo"
+#include <typeinfo>
 
 #if defined(_LIBCPP_ABI_MICROSOFT) && !defined(_LIBCPP_ABI_VCRUNTIME)
+
 #include <string.h>
 
 int std::type_info::__compare(const type_info &__rhs) const noexcept {
diff --git a/src/utility.cpp b/src/utility.cpp
index 6d2cc4a..44433d1 100644
--- a/src/utility.cpp
+++ b/src/utility.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "utility"
+#include <utility>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/valarray.cpp b/src/valarray.cpp
index 5a3a869..5d63bc1 100644
--- a/src/valarray.cpp
+++ b/src/valarray.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "valarray"
+#include <valarray>
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
diff --git a/src/variant.cpp b/src/variant.cpp
index d38d3a7..b6ec448 100644
--- a/src/variant.cpp
+++ b/src/variant.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "variant"
+#include <variant>
 
 namespace std {
 
diff --git a/src/vector.cpp b/src/vector.cpp
index 201d4e3..fa63d5c 100644
--- a/src/vector.cpp
+++ b/src/vector.cpp
@@ -6,7 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "vector"
+#include <vector>
 
 _LIBCPP_BEGIN_NAMESPACE_STD