[libcxx-commits] [libcxx] eb65912 - [libc++] Move __errc to __system_error/errc.h
Nikolas Klauser via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Apr 10 10:23:49 PDT 2023
Author: Nikolas Klauser
Date: 2023-04-10T19:23:42+02:00
New Revision: eb65912e41a108dff733f7f345448faae1eb89c2
URL: https://github.com/llvm/llvm-project/commit/eb65912e41a108dff733f7f345448faae1eb89c2
DIFF: https://github.com/llvm/llvm-project/commit/eb65912e41a108dff733f7f345448faae1eb89c2.diff
LOG: [libc++] Move __errc to __system_error/errc.h
This file was added before we started granularizing the headers, but is essentially just a granularized header. This moves the header to the correct place.
Reviewed By: #libc, EricWF
Spies: libcxx-commits, arichardson, mikhail.ramalho
Differential Revision: https://reviews.llvm.org/D146395
Added:
libcxx/include/__system_error/errc.h
Modified:
libcxx/include/CMakeLists.txt
libcxx/include/__charconv/from_chars_integral.h
libcxx/include/__charconv/from_chars_result.h
libcxx/include/__charconv/to_chars_integral.h
libcxx/include/__charconv/to_chars_result.h
libcxx/include/__filesystem/directory_entry.h
libcxx/include/__format/formatter_floating_point.h
libcxx/include/__format/formatter_integral.h
libcxx/include/__format/formatter_output.h
libcxx/include/__system_error/error_code.h
libcxx/include/__system_error/error_condition.h
libcxx/include/charconv
libcxx/include/module.modulemap.in
libcxx/include/system_error
libcxx/src/filesystem/filesystem_common.h
libcxx/src/include/ryu/ryu.h
libcxx/test/libcxx/private_headers.verify.cpp
libcxx/test/libcxx/transitive_includes.sh.cpp
libcxx/test/libcxx/transitive_includes/cxx03.csv
libcxx/test/libcxx/transitive_includes/cxx11.csv
libcxx/test/libcxx/transitive_includes/cxx14.csv
libcxx/test/libcxx/transitive_includes/cxx17.csv
libcxx/test/libcxx/transitive_includes/cxx20.csv
libcxx/test/libcxx/transitive_includes/cxx2b.csv
libcxx/test/std/diagnostics/syserr/errc.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp
libcxx/test/support/charconv_test_helpers.h
libcxx/test/support/filesystem_test_helper.h
libcxx/utils/data/ignore_format.txt
Removed:
libcxx/include/__errc
################################################################################
diff --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt
index e9b1eb563d04e..65b3d30300daf 100644
--- a/libcxx/include/CMakeLists.txt
+++ b/libcxx/include/CMakeLists.txt
@@ -302,7 +302,6 @@ set(files
__coroutine/trivial_awaitables.h
__debug
__debug_utils/randomize_range.h
- __errc
__exception/exception.h
__exception/exception_ptr.h
__exception/nested_exception.h
@@ -589,6 +588,7 @@ set(files
__support/xlocale/__nop_locale_mgmt.h
__support/xlocale/__posix_l_fallback.h
__support/xlocale/__strtonum_fallback.h
+ __system_error/errc.h
__system_error/error_category.h
__system_error/error_code.h
__system_error/error_condition.h
diff --git a/libcxx/include/__charconv/from_chars_integral.h b/libcxx/include/__charconv/from_chars_integral.h
index 1b729850da3e4..990aa21741b5a 100644
--- a/libcxx/include/__charconv/from_chars_integral.h
+++ b/libcxx/include/__charconv/from_chars_integral.h
@@ -14,8 +14,8 @@
#include <__charconv/from_chars_result.h>
#include <__charconv/traits.h>
#include <__config>
-#include <__errc>
#include <__memory/addressof.h>
+#include <__system_error/errc.h>
#include <__type_traits/enable_if.h>
#include <__type_traits/integral_constant.h>
#include <__type_traits/is_integral.h>
diff --git a/libcxx/include/__charconv/from_chars_result.h b/libcxx/include/__charconv/from_chars_result.h
index 028f5142ceccd..7eeb9ec81ce5d 100644
--- a/libcxx/include/__charconv/from_chars_result.h
+++ b/libcxx/include/__charconv/from_chars_result.h
@@ -11,7 +11,7 @@
#define _LIBCPP___CHARCONV_FROM_CHARS_RESULT_H
#include <__config>
-#include <__errc>
+#include <__system_error/errc.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
diff --git a/libcxx/include/__charconv/to_chars_integral.h b/libcxx/include/__charconv/to_chars_integral.h
index 32205e25c798e..6c726c088f495 100644
--- a/libcxx/include/__charconv/to_chars_integral.h
+++ b/libcxx/include/__charconv/to_chars_integral.h
@@ -17,7 +17,7 @@
#include <__charconv/to_chars_result.h>
#include <__charconv/traits.h>
#include <__config>
-#include <__errc>
+#include <__system_error/errc.h>
#include <__type_traits/enable_if.h>
#include <__type_traits/integral_constant.h>
#include <__type_traits/is_same.h>
diff --git a/libcxx/include/__charconv/to_chars_result.h b/libcxx/include/__charconv/to_chars_result.h
index ef74f20b9d9ab..67221b3983cfa 100644
--- a/libcxx/include/__charconv/to_chars_result.h
+++ b/libcxx/include/__charconv/to_chars_result.h
@@ -11,7 +11,7 @@
#define _LIBCPP___CHARCONV_TO_CHARS_RESULT_H
#include <__config>
-#include <__errc>
+#include <__system_error/errc.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
diff --git a/libcxx/include/__filesystem/directory_entry.h b/libcxx/include/__filesystem/directory_entry.h
index bb5088cba8c37..111dcbd184a5f 100644
--- a/libcxx/include/__filesystem/directory_entry.h
+++ b/libcxx/include/__filesystem/directory_entry.h
@@ -14,7 +14,6 @@
#include <__chrono/time_point.h>
#include <__compare/ordering.h>
#include <__config>
-#include <__errc>
#include <__filesystem/file_status.h>
#include <__filesystem/file_time_type.h>
#include <__filesystem/file_type.h>
@@ -22,6 +21,7 @@
#include <__filesystem/operations.h>
#include <__filesystem/path.h>
#include <__filesystem/perms.h>
+#include <__system_error/errc.h>
#include <__system_error/error_code.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
diff --git a/libcxx/include/__format/formatter_floating_point.h b/libcxx/include/__format/formatter_floating_point.h
index fb8a6df744da9..12c7e589ff5d1 100644
--- a/libcxx/include/__format/formatter_floating_point.h
+++ b/libcxx/include/__format/formatter_floating_point.h
@@ -22,7 +22,6 @@
#include <__concepts/arithmetic.h>
#include <__concepts/same_as.h>
#include <__config>
-#include <__errc>
#include <__format/concepts.h>
#include <__format/format_parse_context.h>
#include <__format/formatter.h>
@@ -30,6 +29,7 @@
#include <__format/formatter_output.h>
#include <__format/parser_std_format_spec.h>
#include <__memory/allocator.h>
+#include <__system_error/errc.h>
#include <__type_traits/conditional.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
diff --git a/libcxx/include/__format/formatter_integral.h b/libcxx/include/__format/formatter_integral.h
index 0b36844a3f244..80d2457aff283 100644
--- a/libcxx/include/__format/formatter_integral.h
+++ b/libcxx/include/__format/formatter_integral.h
@@ -16,11 +16,11 @@
#include <__concepts/arithmetic.h>
#include <__concepts/same_as.h>
#include <__config>
-#include <__errc>
#include <__format/concepts.h>
#include <__format/format_error.h>
#include <__format/formatter_output.h>
#include <__format/parser_std_format_spec.h>
+#include <__system_error/errc.h>
#include <__type_traits/make_unsigned.h>
#include <__utility/unreachable.h>
#include <array>
diff --git a/libcxx/include/__format/formatter_output.h b/libcxx/include/__format/formatter_output.h
index c6dbfcd95505f..f751d8afe5e08 100644
--- a/libcxx/include/__format/formatter_output.h
+++ b/libcxx/include/__format/formatter_output.h
@@ -19,7 +19,6 @@
#include <__chrono/statically_widen.h>
#include <__concepts/same_as.h>
#include <__config>
-#include <__errc>
#include <__format/buffer.h>
#include <__format/concepts.h>
#include <__format/escaped_output_table.h>
@@ -29,6 +28,7 @@
#include <__iterator/back_insert_iterator.h>
#include <__iterator/concepts.h>
#include <__iterator/readable_traits.h> // iter_value_t
+#include <__system_error/errc.h>
#include <__type_traits/make_unsigned.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
diff --git a/libcxx/include/__errc b/libcxx/include/__system_error/errc.h
similarity index 100%
rename from libcxx/include/__errc
rename to libcxx/include/__system_error/errc.h
diff --git a/libcxx/include/__system_error/error_code.h b/libcxx/include/__system_error/error_code.h
index b14c7429e3ca4..450df6ef19d3a 100644
--- a/libcxx/include/__system_error/error_code.h
+++ b/libcxx/include/__system_error/error_code.h
@@ -12,9 +12,9 @@
#include <__compare/ordering.h>
#include <__config>
-#include <__errc>
#include <__functional/hash.h>
#include <__functional/unary_function.h>
+#include <__system_error/errc.h>
#include <__system_error/error_category.h>
#include <__system_error/error_condition.h>
#include <cstddef>
diff --git a/libcxx/include/__system_error/error_condition.h b/libcxx/include/__system_error/error_condition.h
index 2f57a7c3cd32c..dcdafdcdda256 100644
--- a/libcxx/include/__system_error/error_condition.h
+++ b/libcxx/include/__system_error/error_condition.h
@@ -12,8 +12,8 @@
#include <__compare/ordering.h>
#include <__config>
-#include <__errc>
#include <__functional/unary_function.h>
+#include <__system_error/errc.h>
#include <__system_error/error_category.h>
#include <cstddef>
#include <string>
diff --git a/libcxx/include/charconv b/libcxx/include/charconv
index 5608e51ac5e8e..3b14237c0ed82 100644
--- a/libcxx/include/charconv
+++ b/libcxx/include/charconv
@@ -80,7 +80,7 @@ namespace std {
#include <__charconv/traits.h>
#include <__config>
#include <__debug>
-#include <__errc>
+#include <__system_error/errc.h>
#include <cmath> // for log2f
#include <cstdint>
#include <limits>
diff --git a/libcxx/include/module.modulemap.in b/libcxx/include/module.modulemap.in
index 970039acb9a12..b7dbfbcb8765a 100644
--- a/libcxx/include/module.modulemap.in
+++ b/libcxx/include/module.modulemap.in
@@ -1437,7 +1437,8 @@ module std [system] {
export __errc
export *
module __system_error {
- module error_category { private header "__system_error/error_category.h" }
+ module errc { private header "__system_error/errc.h" }
+ module error_category { private header "__system_error/error_category.h" }
module error_code {
private header "__system_error/error_code.h"
export functional.__functional.hash
@@ -1449,6 +1450,7 @@ module std [system] {
export functional.__functional.unary_function
}
module system_error { private header "__system_error/system_error.h" }
+
}
}
module thread {
@@ -1715,7 +1717,6 @@ module std [system] {
module __availability { private header "__availability" export * }
module __bit_reference { private header "__bit_reference" export * }
module __debug { header "__debug" export * }
- module __errc { private header "__errc" export * }
module __hash_table { header "__hash_table" export * }
module __locale {
@requires_LIBCXX_ENABLE_LOCALIZATION@
diff --git a/libcxx/include/system_error b/libcxx/include/system_error
index 3d1722f4963e8..a60c98492aace 100644
--- a/libcxx/include/system_error
+++ b/libcxx/include/system_error
@@ -146,6 +146,7 @@ template <> struct hash<std::error_condition>;
#include <__assert> // all public C++ headers provide the assertion handler
#include <__config>
+#include <__system_error/errc.h>
#include <__system_error/error_category.h>
#include <__system_error/error_code.h>
#include <__system_error/error_condition.h>
diff --git a/libcxx/src/filesystem/filesystem_common.h b/libcxx/src/filesystem/filesystem_common.h
index a9ca34db0bd2e..a1756cf5ef83e 100644
--- a/libcxx/src/filesystem/filesystem_common.h
+++ b/libcxx/src/filesystem/filesystem_common.h
@@ -12,6 +12,7 @@
#include <__assert>
#include <__config>
#include <array>
+#include <cerrno>
#include <chrono>
#include <climits>
#include <cstdarg>
diff --git a/libcxx/src/include/ryu/ryu.h b/libcxx/src/include/ryu/ryu.h
index cb44bd3fef058..8bd34cd63c5f6 100644
--- a/libcxx/src/include/ryu/ryu.h
+++ b/libcxx/src/include/ryu/ryu.h
@@ -48,7 +48,7 @@
#include <__charconv/to_chars_result.h>
#include <__config>
#include <__debug>
-#include <__errc>
+#include <__system_error/errc.h>
#include <cstdint>
#include <cstring>
#include <type_traits>
diff --git a/libcxx/test/libcxx/private_headers.verify.cpp b/libcxx/test/libcxx/private_headers.verify.cpp
index 501a3e136314e..e72de07067f04 100644
--- a/libcxx/test/libcxx/private_headers.verify.cpp
+++ b/libcxx/test/libcxx/private_headers.verify.cpp
@@ -334,7 +334,6 @@ END-SCRIPT
#include <__coroutine/noop_coroutine_handle.h> // expected-error@*:* {{use of private header from outside its module: '__coroutine/noop_coroutine_handle.h'}}
#include <__coroutine/trivial_awaitables.h> // expected-error@*:* {{use of private header from outside its module: '__coroutine/trivial_awaitables.h'}}
#include <__debug_utils/randomize_range.h> // expected-error@*:* {{use of private header from outside its module: '__debug_utils/randomize_range.h'}}
-#include <__errc> // expected-error@*:* {{use of private header from outside its module: '__errc'}}
#include <__exception/exception.h> // expected-error@*:* {{use of private header from outside its module: '__exception/exception.h'}}
#include <__exception/exception_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__exception/exception_ptr.h'}}
#include <__exception/nested_exception.h> // expected-error@*:* {{use of private header from outside its module: '__exception/nested_exception.h'}}
@@ -604,6 +603,7 @@ END-SCRIPT
#include <__string/char_traits.h> // expected-error@*:* {{use of private header from outside its module: '__string/char_traits.h'}}
#include <__string/constexpr_c_functions.h> // expected-error@*:* {{use of private header from outside its module: '__string/constexpr_c_functions.h'}}
#include <__string/extern_template_lists.h> // expected-error@*:* {{use of private header from outside its module: '__string/extern_template_lists.h'}}
+#include <__system_error/errc.h> // expected-error@*:* {{use of private header from outside its module: '__system_error/errc.h'}}
#include <__system_error/error_category.h> // expected-error@*:* {{use of private header from outside its module: '__system_error/error_category.h'}}
#include <__system_error/error_code.h> // expected-error@*:* {{use of private header from outside its module: '__system_error/error_code.h'}}
#include <__system_error/error_condition.h> // expected-error@*:* {{use of private header from outside its module: '__system_error/error_condition.h'}}
diff --git a/libcxx/test/libcxx/transitive_includes.sh.cpp b/libcxx/test/libcxx/transitive_includes.sh.cpp
index 8067103cf47ca..28a1ed586b931 100644
--- a/libcxx/test/libcxx/transitive_includes.sh.cpp
+++ b/libcxx/test/libcxx/transitive_includes.sh.cpp
@@ -27,9 +27,6 @@
// This test uses --trace-includes, which is not supported by GCC.
// UNSUPPORTED: gcc
-// This test doesn't work on AIX, but it should. Needs investigation.
-// XFAIL: buildhost=aix
-
// This test is not supported when we remove the transitive includes provided for backwards
// compatibility. When we bulk-remove them, we'll adjust the includes that are expected by
// this test instead.
diff --git a/libcxx/test/libcxx/transitive_includes/cxx03.csv b/libcxx/test/libcxx/transitive_includes/cxx03.csv
index 4d87ed275dad1..782e3f8135cd8 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx03.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx03.csv
@@ -299,7 +299,6 @@ ext/hash_set limits
ext/hash_set new
ext/hash_set string
ext/hash_set type_traits
-filesystem cerrno
filesystem compare
filesystem concepts
filesystem cstddef
diff --git a/libcxx/test/libcxx/transitive_includes/cxx11.csv b/libcxx/test/libcxx/transitive_includes/cxx11.csv
index 4a3fab51c7556..e54fe47fddf9a 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx11.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx11.csv
@@ -299,7 +299,6 @@ ext/hash_set limits
ext/hash_set new
ext/hash_set string
ext/hash_set type_traits
-filesystem cerrno
filesystem compare
filesystem concepts
filesystem cstddef
diff --git a/libcxx/test/libcxx/transitive_includes/cxx14.csv b/libcxx/test/libcxx/transitive_includes/cxx14.csv
index 53db2022eb41f..3de4afa8922a9 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx14.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx14.csv
@@ -301,7 +301,6 @@ ext/hash_set limits
ext/hash_set new
ext/hash_set string
ext/hash_set type_traits
-filesystem cerrno
filesystem compare
filesystem concepts
filesystem cstddef
diff --git a/libcxx/test/libcxx/transitive_includes/cxx17.csv b/libcxx/test/libcxx/transitive_includes/cxx17.csv
index 53db2022eb41f..3de4afa8922a9 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx17.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx17.csv
@@ -301,7 +301,6 @@ ext/hash_set limits
ext/hash_set new
ext/hash_set string
ext/hash_set type_traits
-filesystem cerrno
filesystem compare
filesystem concepts
filesystem cstddef
diff --git a/libcxx/test/libcxx/transitive_includes/cxx20.csv b/libcxx/test/libcxx/transitive_includes/cxx20.csv
index 255d4f694bb6d..81a3b0c8d7b50 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx20.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx20.csv
@@ -308,7 +308,6 @@ ext/hash_set limits
ext/hash_set new
ext/hash_set string
ext/hash_set type_traits
-filesystem cerrno
filesystem compare
filesystem concepts
filesystem cstddef
diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b.csv b/libcxx/test/libcxx/transitive_includes/cxx2b.csv
index ac566e70b2b9a..c444ff9a99dbc 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx2b.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx2b.csv
@@ -201,7 +201,6 @@ ext/hash_set initializer_list
ext/hash_set limits
ext/hash_set new
ext/hash_set string
-filesystem cerrno
filesystem compare
filesystem cstddef
filesystem cstdint
diff --git a/libcxx/test/std/diagnostics/syserr/errc.pass.cpp b/libcxx/test/std/diagnostics/syserr/errc.pass.cpp
index 6a04a3c4f088d..e44cb50102e3e 100644
--- a/libcxx/test/std/diagnostics/syserr/errc.pass.cpp
+++ b/libcxx/test/std/diagnostics/syserr/errc.pass.cpp
@@ -10,6 +10,7 @@
// enum errc {...}
+#include <cerrno>
#include <system_error>
#include "test_macros.h"
diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp
index b49a492b4a340..4f31a75f68dec 100644
--- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp
+++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp
@@ -15,9 +15,9 @@
// void unlock();
-#include <shared_mutex>
#include <cassert>
#include <cerrno>
+#include <shared_mutex>
#include <system_error>
#include "test_macros.h"
diff --git a/libcxx/test/support/charconv_test_helpers.h b/libcxx/test/support/charconv_test_helpers.h
index 455546a394db5..f5fbedbeb0dcd 100644
--- a/libcxx/test/support/charconv_test_helpers.h
+++ b/libcxx/test/support/charconv_test_helpers.h
@@ -10,8 +10,9 @@
#define SUPPORT_CHARCONV_TEST_HELPERS_H
#include <algorithm>
-#include <charconv>
#include <cassert>
+#include <cerrno>
+#include <charconv>
#include <cstddef>
#include <limits>
#include <numeric>
diff --git a/libcxx/test/support/filesystem_test_helper.h b/libcxx/test/support/filesystem_test_helper.h
index 8c2bbb0ab61ff..c7a5470a789c7 100644
--- a/libcxx/test/support/filesystem_test_helper.h
+++ b/libcxx/test/support/filesystem_test_helper.h
@@ -14,6 +14,7 @@
#endif
#include <cassert>
+#include <cerrno>
#include <chrono>
#include <cstdint>
#include <cstdio> // for printf
diff --git a/libcxx/utils/data/ignore_format.txt b/libcxx/utils/data/ignore_format.txt
index a69f75b0cedab..a988db47baaff 100644
--- a/libcxx/utils/data/ignore_format.txt
+++ b/libcxx/utils/data/ignore_format.txt
@@ -308,7 +308,6 @@ libcxx/include/cuchar
libcxx/include/__debug
libcxx/include/__debug_utils/randomize_range.h
libcxx/include/deque
-libcxx/include/__errc
libcxx/include/errno.h
libcxx/include/execution
libcxx/include/expected
@@ -611,6 +610,7 @@ libcxx/include/__support/newlib/xlocale.h
libcxx/include/__support/solaris/xlocale.h
libcxx/include/__support/win32/locale_win32.h
libcxx/include/__support/xlocale/__nop_locale_mgmt.h
+libcxx/include/__system_error/errc.h
libcxx/include/__system_error/error_category.h
libcxx/include/__system_error/error_code.h
libcxx/include/__system_error/error_condition.h
More information about the libcxx-commits
mailing list