From b681217fab4ab608bd1f3e0b724d32a3272aa221 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leroy Date: Mon, 19 Oct 2026 16:31:55 -0400 Subject: [PATCH] Include what you use in headers, tests, examples Add the standard and Boost headers each file names directly instead of relying on transitive includes, and drop the few includes nothing uses ( and in core, and in initialize, in ostdstream, in static_list, in vptr_vector, in the intrusive_ptr interop). Tests, examples, snippets and ce/ only gain missing standard includes. Co-Authored-By: Claude Sonnet 5.5 Claude-Session: https://claude.ai/code/session_016NKQZ2ktRZ1AjCgSLLeXma --- doc/modules/ROOT/examples/accept_no_visitors.cpp | 1 + doc/modules/ROOT/examples/adl_registry.cpp | 1 + doc/modules/ROOT/examples/ast_unique_ptr.cpp | 2 ++ doc/modules/ROOT/examples/custom_rtti/1/custom_rtti.cpp | 1 + doc/modules/ROOT/examples/custom_rtti/2/custom_rtti.cpp | 1 + doc/modules/ROOT/examples/default_error_handler.cpp | 2 ++ doc/modules/ROOT/examples/friendship.cpp | 1 + .../ROOT/examples/friendship_across_namespaces.cpp | 1 + doc/modules/ROOT/examples/headers_namespaces/main.cpp | 1 + .../examples/headers_namespaces/main_using_directive.cpp | 1 + doc/modules/ROOT/examples/hello_world.cpp | 1 + doc/modules/ROOT/examples/matrix.cpp | 1 + .../examples/shared_libs/dynamic_loading/extensions.cpp | 2 ++ .../ROOT/examples/shared_libs/dynamic_loading/main.cpp | 1 + .../examples/shared_libs/implicit_linking/extensions.cpp | 2 ++ .../ROOT/examples/shared_libs/implicit_linking/main.cpp | 1 + .../examples/shared_libs/indirect_vptr/extensions.cpp | 2 ++ .../ROOT/examples/shared_libs/indirect_vptr/main.cpp | 1 + doc/modules/ROOT/examples/slides.cpp | 1 + .../ROOT/examples/snippets/errors_missing_base.cpp | 2 ++ .../ROOT/examples/snippets/errors_missing_class_call.cpp | 2 ++ .../examples/snippets/errors_missing_class_method.cpp | 2 ++ .../examples/snippets/errors_missing_class_overrider.cpp | 2 ++ doc/modules/ROOT/examples/snippets/initialize.cpp | 2 ++ doc/modules/ROOT/examples/snippets/inplace_vptr.cpp | 1 + doc/modules/ROOT/examples/snippets/intrusive_ptr.cpp | 2 ++ doc/modules/ROOT/examples/snippets/policies.cpp | 1 + doc/modules/ROOT/examples/snippets/smart_pointers.cpp | 4 ++++ doc/modules/ROOT/examples/snippets/static_rtti.cpp | 2 ++ doc/modules/ROOT/examples/snippets/virtual_ptr.cpp | 5 +++++ doc/modules/ROOT/examples/throw_error_handler.cpp | 1 + doc/modules/ROOT/examples/virtual_func.cpp | 1 + doc/modules/ROOT/examples/virtual_ptr.cpp | 1 + include/boost/openmethod/core.hpp | 3 +-- include/boost/openmethod/detail/ostdstream.hpp | 3 ++- include/boost/openmethod/detail/static_list.hpp | 4 +++- include/boost/openmethod/initialize.hpp | 9 +++++++-- include/boost/openmethod/inplace_vptr.hpp | 4 ++++ include/boost/openmethod/interop/boost_any.hpp | 3 +++ include/boost/openmethod/interop/boost_intrusive_ptr.hpp | 4 +++- include/boost/openmethod/interop/std_any.hpp | 2 ++ include/boost/openmethod/interop/std_shared_ptr.hpp | 2 ++ include/boost/openmethod/interop/std_unique_ptr.hpp | 2 ++ include/boost/openmethod/interop/std_weak_ptr.hpp | 2 ++ include/boost/openmethod/interop/virtual_any.hpp | 5 +++++ include/boost/openmethod/macros.hpp | 6 ++++++ .../boost/openmethod/policies/default_error_handler.hpp | 4 ++++ include/boost/openmethod/policies/fast_perfect_hash.hpp | 8 ++++++++ include/boost/openmethod/policies/minimal_cover_hash.hpp | 4 ++++ .../boost/openmethod/policies/minimal_perfect_hash.hpp | 3 +++ include/boost/openmethod/policies/std_rtti.hpp | 3 +++ include/boost/openmethod/policies/two_level_hash.hpp | 3 +++ include/boost/openmethod/policies/vptr_map.hpp | 4 ++++ include/boost/openmethod/policies/vptr_vector.hpp | 6 +++++- include/boost/openmethod/preamble.hpp | 3 +++ .../compile_fail_boost_any_mutable_ref_to_rvalue_ref.cpp | 1 + test/compile_fail_final_virtual_ptr_weak_ptr.cpp | 2 ++ test/compile_fail_weak_ptr_parameter.cpp | 2 ++ test/compile_fail_weak_virtual_ptr_parameter.cpp | 2 ++ test/dynamic_loading/main.cpp | 2 ++ test/dynamic_loading/overrider.cpp | 2 ++ test/implicit_shared_libraries/default_registry/lib.cpp | 2 ++ test/mix_release_debug/main.cpp | 2 ++ test/test_adl_registry.cpp | 1 + test/test_adl_registry_hidden_friend.cpp | 1 + test/test_adl_registry_inheritance.cpp | 2 ++ test/test_adl_registry_inplace.cpp | 1 + test/test_adl_registry_scan.cpp | 1 + test/test_adl_registry_smart_ptr.cpp | 1 + test/test_adl_registry_static_rtti.cpp | 1 + test/test_adl_registry_two_registries.cpp | 1 + test/test_class_registration_own_state.cpp | 2 ++ test/test_core.cpp | 3 +++ test/test_custom_rtti_deferred.cpp | 2 ++ test/test_custom_rtti_simple.cpp | 2 ++ test/test_custom_rtti_simple_projection.cpp | 3 +++ test/test_custom_rtti_virtual_base.cpp | 2 ++ test/test_dispatch_boost_any.cpp | 2 ++ test/test_dispatch_intrusive_ptr.cpp | 1 + test/test_dispatch_minimal_cover_hash.cpp | 2 ++ test/test_dispatch_minimal_perfect_hash.cpp | 2 ++ test/test_dispatch_rvalue_refs.cpp | 1 + test/test_dispatch_std_any.cpp | 3 +++ test/test_dispatch_two_level_hash.cpp | 2 ++ test/test_dispatch_unique_ptr.cpp | 1 + test/test_hash_policies.cpp | 2 ++ test/test_initialize_context.cpp | 1 + test/test_inplace_vptr.cpp | 2 ++ test/test_n2216_covariant_return_type.cpp | 1 + test/test_policies.cpp | 1 + test/test_reflection.cpp | 1 + test/test_runtime_errors_bad_call.cpp | 2 ++ test/test_runtime_errors_bad_call_type_ids.cpp | 2 ++ test/test_runtime_errors_bad_call_type_ids_smart_ptr.cpp | 2 ++ test/test_runtime_errors_call_unknown_class.cpp | 2 ++ test/test_runtime_errors_duplicate_overrider.cpp | 2 ++ test/test_runtime_errors_initialize_unknown_class.cpp | 2 ++ test/test_runtime_errors_no_initialization.cpp | 2 ++ test/test_runtime_errors_throw_error.cpp | 3 +++ test/test_shared_virtual_ptr_dispatch.cpp | 2 ++ test/test_shared_virtual_ptr_value_semantics.cpp | 2 ++ test/test_slot_allocator.cpp | 6 ++++++ test/test_smart_virtual_ptr_value_semantics.cpp | 2 ++ test/test_static_rtti.cpp | 2 ++ test/test_static_rtti_errors.cpp | 1 + test/test_unique_virtual_ptr_value_semantics.cpp | 2 ++ test/test_util.hpp | 1 + test/test_virtual_ptr_dispatch.cpp | 2 ++ test/test_virtual_ptr_final.cpp | 2 ++ test/test_virtual_ptr_value_semantics.cpp | 5 +++++ test/test_weak_virtual_ptr.cpp | 1 + 111 files changed, 236 insertions(+), 8 deletions(-) diff --git a/doc/modules/ROOT/examples/accept_no_visitors.cpp b/doc/modules/ROOT/examples/accept_no_visitors.cpp index b63875eb9..b29df6a5b 100644 --- a/doc/modules/ROOT/examples/accept_no_visitors.cpp +++ b/doc/modules/ROOT/examples/accept_no_visitors.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include #include diff --git a/doc/modules/ROOT/examples/adl_registry.cpp b/doc/modules/ROOT/examples/adl_registry.cpp index 4584adc54..1880c6b8a 100644 --- a/doc/modules/ROOT/examples/adl_registry.cpp +++ b/doc/modules/ROOT/examples/adl_registry.cpp @@ -4,6 +4,7 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #include diff --git a/doc/modules/ROOT/examples/ast_unique_ptr.cpp b/doc/modules/ROOT/examples/ast_unique_ptr.cpp index 822b41afb..10475011b 100644 --- a/doc/modules/ROOT/examples/ast_unique_ptr.cpp +++ b/doc/modules/ROOT/examples/ast_unique_ptr.cpp @@ -37,6 +37,8 @@ struct Times : Node { }; #include +#include +#include BOOST_OPENMETHOD(postfix, (virtual_ptr node, std::ostream& os), void); diff --git a/doc/modules/ROOT/examples/custom_rtti/1/custom_rtti.cpp b/doc/modules/ROOT/examples/custom_rtti/1/custom_rtti.cpp index 2b84cf5e9..6e3ada529 100644 --- a/doc/modules/ROOT/examples/custom_rtti/1/custom_rtti.cpp +++ b/doc/modules/ROOT/examples/custom_rtti/1/custom_rtti.cpp @@ -83,6 +83,7 @@ struct custom_registry : boost::openmethod::registry< // end::registry[] #include +#include using boost::openmethod::virtual_ptr; diff --git a/doc/modules/ROOT/examples/custom_rtti/2/custom_rtti.cpp b/doc/modules/ROOT/examples/custom_rtti/2/custom_rtti.cpp index b5c7d5607..87fc96571 100644 --- a/doc/modules/ROOT/examples/custom_rtti/2/custom_rtti.cpp +++ b/doc/modules/ROOT/examples/custom_rtti/2/custom_rtti.cpp @@ -79,6 +79,7 @@ struct custom_registry : boost::openmethod::registry< // end::registry[] #include +#include using boost::openmethod::virtual_ptr; diff --git a/doc/modules/ROOT/examples/default_error_handler.cpp b/doc/modules/ROOT/examples/default_error_handler.cpp index a7952b61c..f00b02926 100644 --- a/doc/modules/ROOT/examples/default_error_handler.cpp +++ b/doc/modules/ROOT/examples/default_error_handler.cpp @@ -5,7 +5,9 @@ // tag::example[] #include +#include #include +#include #include #include diff --git a/doc/modules/ROOT/examples/friendship.cpp b/doc/modules/ROOT/examples/friendship.cpp index 93d0d7053..b9ceb1612 100644 --- a/doc/modules/ROOT/examples/friendship.cpp +++ b/doc/modules/ROOT/examples/friendship.cpp @@ -6,6 +6,7 @@ // clang-format off #include +#include #include #include diff --git a/doc/modules/ROOT/examples/friendship_across_namespaces.cpp b/doc/modules/ROOT/examples/friendship_across_namespaces.cpp index 99ba4e516..7252e0509 100644 --- a/doc/modules/ROOT/examples/friendship_across_namespaces.cpp +++ b/doc/modules/ROOT/examples/friendship_across_namespaces.cpp @@ -6,6 +6,7 @@ // clang-format off #include +#include #include #include diff --git a/doc/modules/ROOT/examples/headers_namespaces/main.cpp b/doc/modules/ROOT/examples/headers_namespaces/main.cpp index ceb1b08f3..be05d35e9 100644 --- a/doc/modules/ROOT/examples/headers_namespaces/main.cpp +++ b/doc/modules/ROOT/examples/headers_namespaces/main.cpp @@ -1,4 +1,5 @@ #include +#include #include #include diff --git a/doc/modules/ROOT/examples/headers_namespaces/main_using_directive.cpp b/doc/modules/ROOT/examples/headers_namespaces/main_using_directive.cpp index 473784f7d..7ea02ab3c 100644 --- a/doc/modules/ROOT/examples/headers_namespaces/main_using_directive.cpp +++ b/doc/modules/ROOT/examples/headers_namespaces/main_using_directive.cpp @@ -1,4 +1,5 @@ #include +#include #include #include diff --git a/doc/modules/ROOT/examples/hello_world.cpp b/doc/modules/ROOT/examples/hello_world.cpp index 6891d99b0..a3180affa 100644 --- a/doc/modules/ROOT/examples/hello_world.cpp +++ b/doc/modules/ROOT/examples/hello_world.cpp @@ -6,6 +6,7 @@ // clang-format off // tag::domain_classes[] +#include #include struct Animal { diff --git a/doc/modules/ROOT/examples/matrix.cpp b/doc/modules/ROOT/examples/matrix.cpp index cfdd42f68..4c9e0e6e6 100644 --- a/doc/modules/ROOT/examples/matrix.cpp +++ b/doc/modules/ROOT/examples/matrix.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include diff --git a/doc/modules/ROOT/examples/shared_libs/dynamic_loading/extensions.cpp b/doc/modules/ROOT/examples/shared_libs/dynamic_loading/extensions.cpp index 1c60a13dd..691ac6d71 100644 --- a/doc/modules/ROOT/examples/shared_libs/dynamic_loading/extensions.cpp +++ b/doc/modules/ROOT/examples/shared_libs/dynamic_loading/extensions.cpp @@ -8,6 +8,8 @@ #include "animals.hpp" +#include + using namespace boost::openmethod; BOOST_OPENMETHOD_OVERRIDE( diff --git a/doc/modules/ROOT/examples/shared_libs/dynamic_loading/main.cpp b/doc/modules/ROOT/examples/shared_libs/dynamic_loading/main.cpp index b7a1cda8e..c607d30f9 100644 --- a/doc/modules/ROOT/examples/shared_libs/dynamic_loading/main.cpp +++ b/doc/modules/ROOT/examples/shared_libs/dynamic_loading/main.cpp @@ -15,6 +15,7 @@ #include #include #include +#include using namespace boost::openmethod; diff --git a/doc/modules/ROOT/examples/shared_libs/implicit_linking/extensions.cpp b/doc/modules/ROOT/examples/shared_libs/implicit_linking/extensions.cpp index feab96fb6..cb7f816df 100644 --- a/doc/modules/ROOT/examples/shared_libs/implicit_linking/extensions.cpp +++ b/doc/modules/ROOT/examples/shared_libs/implicit_linking/extensions.cpp @@ -10,6 +10,8 @@ #include "animals.hpp" +#include + using namespace boost::openmethod; BOOST_OPENMETHOD_INSTANTIATE_REGISTRY(boost::openmethod::default_registry); diff --git a/doc/modules/ROOT/examples/shared_libs/implicit_linking/main.cpp b/doc/modules/ROOT/examples/shared_libs/implicit_linking/main.cpp index 1f844b816..3cc49f9a7 100644 --- a/doc/modules/ROOT/examples/shared_libs/implicit_linking/main.cpp +++ b/doc/modules/ROOT/examples/shared_libs/implicit_linking/main.cpp @@ -10,6 +10,7 @@ #include #include #include +#include using namespace boost::openmethod::aliases; diff --git a/doc/modules/ROOT/examples/shared_libs/indirect_vptr/extensions.cpp b/doc/modules/ROOT/examples/shared_libs/indirect_vptr/extensions.cpp index 041f917b3..44f6c1cc1 100644 --- a/doc/modules/ROOT/examples/shared_libs/indirect_vptr/extensions.cpp +++ b/doc/modules/ROOT/examples/shared_libs/indirect_vptr/extensions.cpp @@ -8,6 +8,8 @@ #include "animals.hpp" +#include + using namespace boost::openmethod; BOOST_OPENMETHOD_OVERRIDE( diff --git a/doc/modules/ROOT/examples/shared_libs/indirect_vptr/main.cpp b/doc/modules/ROOT/examples/shared_libs/indirect_vptr/main.cpp index a8dd1aebb..8bec58761 100644 --- a/doc/modules/ROOT/examples/shared_libs/indirect_vptr/main.cpp +++ b/doc/modules/ROOT/examples/shared_libs/indirect_vptr/main.cpp @@ -15,6 +15,7 @@ #include #include #include +#include using namespace boost::openmethod::aliases; diff --git a/doc/modules/ROOT/examples/slides.cpp b/doc/modules/ROOT/examples/slides.cpp index c0526718c..fe86eb5d1 100644 --- a/doc/modules/ROOT/examples/slides.cpp +++ b/doc/modules/ROOT/examples/slides.cpp @@ -4,6 +4,7 @@ #include #include #include +#include #include #include diff --git a/doc/modules/ROOT/examples/snippets/errors_missing_base.cpp b/doc/modules/ROOT/examples/snippets/errors_missing_base.cpp index fc557b5e9..5161b4aac 100644 --- a/doc/modules/ROOT/examples/snippets/errors_missing_base.cpp +++ b/doc/modules/ROOT/examples/snippets/errors_missing_base.cpp @@ -11,6 +11,8 @@ #include "error_harness.hpp" +#include + using namespace boost::openmethod; struct Animal { diff --git a/doc/modules/ROOT/examples/snippets/errors_missing_class_call.cpp b/doc/modules/ROOT/examples/snippets/errors_missing_class_call.cpp index 5f6a2bc19..7184a9060 100644 --- a/doc/modules/ROOT/examples/snippets/errors_missing_class_call.cpp +++ b/doc/modules/ROOT/examples/snippets/errors_missing_class_call.cpp @@ -15,6 +15,8 @@ #include "error_harness.hpp" +#include + using namespace boost::openmethod; struct Animal { diff --git a/doc/modules/ROOT/examples/snippets/errors_missing_class_method.cpp b/doc/modules/ROOT/examples/snippets/errors_missing_class_method.cpp index 4c4095c5a..fd4ae2729 100644 --- a/doc/modules/ROOT/examples/snippets/errors_missing_class_method.cpp +++ b/doc/modules/ROOT/examples/snippets/errors_missing_class_method.cpp @@ -11,6 +11,8 @@ #include "error_harness.hpp" +#include + using namespace boost::openmethod; struct Animal { diff --git a/doc/modules/ROOT/examples/snippets/errors_missing_class_overrider.cpp b/doc/modules/ROOT/examples/snippets/errors_missing_class_overrider.cpp index 31ad6bbb8..08f3d9368 100644 --- a/doc/modules/ROOT/examples/snippets/errors_missing_class_overrider.cpp +++ b/doc/modules/ROOT/examples/snippets/errors_missing_class_overrider.cpp @@ -11,6 +11,8 @@ #include "error_harness.hpp" +#include + using namespace boost::openmethod; struct Animal { diff --git a/doc/modules/ROOT/examples/snippets/initialize.cpp b/doc/modules/ROOT/examples/snippets/initialize.cpp index eec85226d..068ae3231 100644 --- a/doc/modules/ROOT/examples/snippets/initialize.cpp +++ b/doc/modules/ROOT/examples/snippets/initialize.cpp @@ -11,6 +11,8 @@ #include "capture.hpp" +#include + namespace bom = boost::openmethod; struct Animal { diff --git a/doc/modules/ROOT/examples/snippets/inplace_vptr.cpp b/doc/modules/ROOT/examples/snippets/inplace_vptr.cpp index 7387555dd..8b1eace18 100644 --- a/doc/modules/ROOT/examples/snippets/inplace_vptr.cpp +++ b/doc/modules/ROOT/examples/snippets/inplace_vptr.cpp @@ -8,6 +8,7 @@ #include #include +#include #define BOOST_TEST_MODULE openmethod #include diff --git a/doc/modules/ROOT/examples/snippets/intrusive_ptr.cpp b/doc/modules/ROOT/examples/snippets/intrusive_ptr.cpp index 029ebefc9..adcbdcf45 100644 --- a/doc/modules/ROOT/examples/snippets/intrusive_ptr.cpp +++ b/doc/modules/ROOT/examples/snippets/intrusive_ptr.cpp @@ -15,6 +15,8 @@ #include "capture.hpp" +#include + using namespace boost::openmethod; // tag::classes[] diff --git a/doc/modules/ROOT/examples/snippets/policies.cpp b/doc/modules/ROOT/examples/snippets/policies.cpp index eed827a2c..0fdce0c08 100644 --- a/doc/modules/ROOT/examples/snippets/policies.cpp +++ b/doc/modules/ROOT/examples/snippets/policies.cpp @@ -12,6 +12,7 @@ #include #include +#include #include #define BOOST_TEST_MODULE openmethod diff --git a/doc/modules/ROOT/examples/snippets/smart_pointers.cpp b/doc/modules/ROOT/examples/snippets/smart_pointers.cpp index 26291743b..b35425ce0 100644 --- a/doc/modules/ROOT/examples/snippets/smart_pointers.cpp +++ b/doc/modules/ROOT/examples/snippets/smart_pointers.cpp @@ -14,6 +14,10 @@ #include "capture.hpp" +#include +#include +#include + using namespace boost::openmethod; // tag::classes[] diff --git a/doc/modules/ROOT/examples/snippets/static_rtti.cpp b/doc/modules/ROOT/examples/snippets/static_rtti.cpp index 6d447b6cf..397e29952 100644 --- a/doc/modules/ROOT/examples/snippets/static_rtti.cpp +++ b/doc/modules/ROOT/examples/snippets/static_rtti.cpp @@ -25,6 +25,8 @@ struct static_registry : #include "capture.hpp" +#include + using namespace boost::openmethod::aliases; // tag::classes[] diff --git a/doc/modules/ROOT/examples/snippets/virtual_ptr.cpp b/doc/modules/ROOT/examples/snippets/virtual_ptr.cpp index 25da3d20c..affe9a55c 100644 --- a/doc/modules/ROOT/examples/snippets/virtual_ptr.cpp +++ b/doc/modules/ROOT/examples/snippets/virtual_ptr.cpp @@ -13,6 +13,11 @@ #include "capture.hpp" +#include +#include +#include +#include + using namespace boost::openmethod; namespace polymorphic_classes { diff --git a/doc/modules/ROOT/examples/throw_error_handler.cpp b/doc/modules/ROOT/examples/throw_error_handler.cpp index d8a0a3dce..f951f46a0 100644 --- a/doc/modules/ROOT/examples/throw_error_handler.cpp +++ b/doc/modules/ROOT/examples/throw_error_handler.cpp @@ -11,6 +11,7 @@ struct custom_registry; #include #include +#include struct Animal { virtual ~Animal() = default; diff --git a/doc/modules/ROOT/examples/virtual_func.cpp b/doc/modules/ROOT/examples/virtual_func.cpp index f68d5f9f4..1c363b6bf 100644 --- a/doc/modules/ROOT/examples/virtual_func.cpp +++ b/doc/modules/ROOT/examples/virtual_func.cpp @@ -9,6 +9,7 @@ #include #include +#include struct Animal { Animal(std::string name) : name(name) {} diff --git a/doc/modules/ROOT/examples/virtual_ptr.cpp b/doc/modules/ROOT/examples/virtual_ptr.cpp index f81c35ba9..81fd65cf9 100644 --- a/doc/modules/ROOT/examples/virtual_ptr.cpp +++ b/doc/modules/ROOT/examples/virtual_ptr.cpp @@ -4,6 +4,7 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #include diff --git a/include/boost/openmethod/core.hpp b/include/boost/openmethod/core.hpp index 226a5e1ec..c0deca8df 100644 --- a/include/boost/openmethod/core.hpp +++ b/include/boost/openmethod/core.hpp @@ -7,9 +7,8 @@ #define BOOST_OPENMETHOD_CORE_HPP #include -#include +#include #include -#include #include #include diff --git a/include/boost/openmethod/detail/ostdstream.hpp b/include/boost/openmethod/detail/ostdstream.hpp index 25b533bd1..1a2233481 100644 --- a/include/boost/openmethod/detail/ostdstream.hpp +++ b/include/boost/openmethod/detail/ostdstream.hpp @@ -7,9 +7,10 @@ #define BOOST_OPENMETHOD_DETAIL_OSTDSTREAM_HPP #include +#include +#include #include #include -#include #include namespace boost::openmethod { diff --git a/include/boost/openmethod/detail/static_list.hpp b/include/boost/openmethod/detail/static_list.hpp index 7a6763ac9..98e33976b 100644 --- a/include/boost/openmethod/detail/static_list.hpp +++ b/include/boost/openmethod/detail/static_list.hpp @@ -6,9 +6,11 @@ #ifndef BOOST_OPENMETHOD_DETAIL_STATIC_LIST_HPP #define BOOST_OPENMETHOD_DETAIL_STATIC_LIST_HPP -#include #include +#include +#include + namespace boost::openmethod { namespace detail { diff --git a/include/boost/openmethod/initialize.hpp b/include/boost/openmethod/initialize.hpp index 73aa6d64e..a1a069eb1 100644 --- a/include/boost/openmethod/initialize.hpp +++ b/include/boost/openmethod/initialize.hpp @@ -10,14 +10,16 @@ #include #include +#include #include +#include #include +#include #include #include -#include #include -#include #include +#include #include #include #include @@ -25,6 +27,9 @@ #include #include +#include +#include +#include #ifdef _MSC_VER #pragma warning(push) diff --git a/include/boost/openmethod/inplace_vptr.hpp b/include/boost/openmethod/inplace_vptr.hpp index f73c13286..3f6a04d47 100644 --- a/include/boost/openmethod/inplace_vptr.hpp +++ b/include/boost/openmethod/inplace_vptr.hpp @@ -3,6 +3,10 @@ #include +#include + +#include + // ============================================================================= // inplace_vptr diff --git a/include/boost/openmethod/interop/boost_any.hpp b/include/boost/openmethod/interop/boost_any.hpp index ee1e6f2e5..9864c7b6e 100644 --- a/include/boost/openmethod/interop/boost_any.hpp +++ b/include/boost/openmethod/interop/boost_any.hpp @@ -11,6 +11,9 @@ #include #include +#include +#include + // Dispatch on the type contained in a `boost::any`. // // This interop is based on a design contributed by Steven Watanabe: diff --git a/include/boost/openmethod/interop/boost_intrusive_ptr.hpp b/include/boost/openmethod/interop/boost_intrusive_ptr.hpp index 039a92cde..7c58e2922 100644 --- a/include/boost/openmethod/interop/boost_intrusive_ptr.hpp +++ b/include/boost/openmethod/interop/boost_intrusive_ptr.hpp @@ -8,7 +8,9 @@ #include #include -#include + +#include +#include namespace boost::openmethod { diff --git a/include/boost/openmethod/interop/std_any.hpp b/include/boost/openmethod/interop/std_any.hpp index d8ff4a893..2f0181e7e 100644 --- a/include/boost/openmethod/interop/std_any.hpp +++ b/include/boost/openmethod/interop/std_any.hpp @@ -7,6 +7,8 @@ #define BOOST_OPENMETHOD_INTEROP_STD_ANY_HPP #include +#include +#include #include #include #include diff --git a/include/boost/openmethod/interop/std_shared_ptr.hpp b/include/boost/openmethod/interop/std_shared_ptr.hpp index 4c9b67cba..7adb27407 100644 --- a/include/boost/openmethod/interop/std_shared_ptr.hpp +++ b/include/boost/openmethod/interop/std_shared_ptr.hpp @@ -8,6 +8,8 @@ #include #include +#include +#include namespace boost::openmethod { namespace detail { diff --git a/include/boost/openmethod/interop/std_unique_ptr.hpp b/include/boost/openmethod/interop/std_unique_ptr.hpp index 58c82b7ad..8ff7a2923 100644 --- a/include/boost/openmethod/interop/std_unique_ptr.hpp +++ b/include/boost/openmethod/interop/std_unique_ptr.hpp @@ -9,6 +9,8 @@ #include #include +#include +#include namespace boost::openmethod { diff --git a/include/boost/openmethod/interop/std_weak_ptr.hpp b/include/boost/openmethod/interop/std_weak_ptr.hpp index 778202c55..82a62bc41 100644 --- a/include/boost/openmethod/interop/std_weak_ptr.hpp +++ b/include/boost/openmethod/interop/std_weak_ptr.hpp @@ -7,7 +7,9 @@ #define BOOST_OPENMETHOD_INTEROP_WEAK_PTR_HPP #include +#include #include +#include #include namespace boost::openmethod { diff --git a/include/boost/openmethod/interop/virtual_any.hpp b/include/boost/openmethod/interop/virtual_any.hpp index c0179f37a..b597b6ae1 100644 --- a/include/boost/openmethod/interop/virtual_any.hpp +++ b/include/boost/openmethod/interop/virtual_any.hpp @@ -8,6 +8,11 @@ #include +#include +#include +#include +#include + #include #include diff --git a/include/boost/openmethod/macros.hpp b/include/boost/openmethod/macros.hpp index b772c2c80..998fbd921 100644 --- a/include/boost/openmethod/macros.hpp +++ b/include/boost/openmethod/macros.hpp @@ -6,10 +6,16 @@ #ifndef BOOST_OPENMETHOD_MACROS_HPP #define BOOST_OPENMETHOD_MACROS_HPP +#include +#include +#include #include #include +#include +#include + namespace boost::openmethod::detail { template diff --git a/include/boost/openmethod/policies/default_error_handler.hpp b/include/boost/openmethod/policies/default_error_handler.hpp index b9706e0c2..dcc222f0a 100644 --- a/include/boost/openmethod/policies/default_error_handler.hpp +++ b/include/boost/openmethod/policies/default_error_handler.hpp @@ -8,7 +8,11 @@ #include +#include + #include +#include +#include #include namespace boost::openmethod { diff --git a/include/boost/openmethod/policies/fast_perfect_hash.hpp b/include/boost/openmethod/policies/fast_perfect_hash.hpp index 2cf2b2e0e..adfdae459 100644 --- a/include/boost/openmethod/policies/fast_perfect_hash.hpp +++ b/include/boost/openmethod/policies/fast_perfect_hash.hpp @@ -8,11 +8,19 @@ #include +#include +#include +#include + +#include +#include #include #include #include #include +#include #include +#include #ifdef _MSC_VER #pragma warning(push) diff --git a/include/boost/openmethod/policies/minimal_cover_hash.hpp b/include/boost/openmethod/policies/minimal_cover_hash.hpp index 7c19b9e39..c13617ecc 100644 --- a/include/boost/openmethod/policies/minimal_cover_hash.hpp +++ b/include/boost/openmethod/policies/minimal_cover_hash.hpp @@ -8,12 +8,16 @@ #include +#include + #include #include +#include #include #include #include #include +#include #include #include diff --git a/include/boost/openmethod/policies/minimal_perfect_hash.hpp b/include/boost/openmethod/policies/minimal_perfect_hash.hpp index db64c578e..edecde7e2 100644 --- a/include/boost/openmethod/policies/minimal_perfect_hash.hpp +++ b/include/boost/openmethod/policies/minimal_perfect_hash.hpp @@ -9,12 +9,15 @@ #include #include +#include #include +#include #include #include #include #include +#include #include #include diff --git a/include/boost/openmethod/policies/std_rtti.hpp b/include/boost/openmethod/policies/std_rtti.hpp index 60d455e0f..ceb10e34d 100644 --- a/include/boost/openmethod/policies/std_rtti.hpp +++ b/include/boost/openmethod/policies/std_rtti.hpp @@ -9,7 +9,10 @@ #include #include +#include + #include +#include #ifndef BOOST_NO_RTTI #include diff --git a/include/boost/openmethod/policies/two_level_hash.hpp b/include/boost/openmethod/policies/two_level_hash.hpp index b5d09df9e..f9ae833d0 100644 --- a/include/boost/openmethod/policies/two_level_hash.hpp +++ b/include/boost/openmethod/policies/two_level_hash.hpp @@ -9,12 +9,15 @@ #include #include +#include #include +#include #include #include #include #include +#include #include #include diff --git a/include/boost/openmethod/policies/vptr_map.hpp b/include/boost/openmethod/policies/vptr_map.hpp index d87abc76e..174b78263 100644 --- a/include/boost/openmethod/policies/vptr_map.hpp +++ b/include/boost/openmethod/policies/vptr_map.hpp @@ -8,7 +8,11 @@ #include +#include + +#include #include +#include #include #ifdef _MSC_VER diff --git a/include/boost/openmethod/policies/vptr_vector.hpp b/include/boost/openmethod/policies/vptr_vector.hpp index 99fd0cf59..ab6ec1c1c 100644 --- a/include/boost/openmethod/policies/vptr_vector.hpp +++ b/include/boost/openmethod/policies/vptr_vector.hpp @@ -8,8 +8,12 @@ #include +#include + +#include +#include #include -#include +#include #include #ifdef _MSC_VER diff --git a/include/boost/openmethod/preamble.hpp b/include/boost/openmethod/preamble.hpp index f3e75bbd9..112242fb2 100644 --- a/include/boost/openmethod/preamble.hpp +++ b/include/boost/openmethod/preamble.hpp @@ -11,6 +11,9 @@ #include #include +#include +#include +#include #include #include #include diff --git a/test/compile_fail_boost_any_mutable_ref_to_rvalue_ref.cpp b/test/compile_fail_boost_any_mutable_ref_to_rvalue_ref.cpp index 1114f366f..a850021f4 100644 --- a/test/compile_fail_boost_any_mutable_ref_to_rvalue_ref.cpp +++ b/test/compile_fail_boost_any_mutable_ref_to_rvalue_ref.cpp @@ -7,6 +7,7 @@ // expected-error: no matching #include +#include #include #include diff --git a/test/compile_fail_final_virtual_ptr_weak_ptr.cpp b/test/compile_fail_final_virtual_ptr_weak_ptr.cpp index bb91a4b08..6b17253b5 100644 --- a/test/compile_fail_final_virtual_ptr_weak_ptr.cpp +++ b/test/compile_fail_final_virtual_ptr_weak_ptr.cpp @@ -9,6 +9,8 @@ #include #include +#include + using namespace boost::openmethod; struct Animal { diff --git a/test/compile_fail_weak_ptr_parameter.cpp b/test/compile_fail_weak_ptr_parameter.cpp index 2ff9031a3..53599e8a1 100644 --- a/test/compile_fail_weak_ptr_parameter.cpp +++ b/test/compile_fail_weak_ptr_parameter.cpp @@ -10,6 +10,8 @@ #include #include +#include + using namespace boost::openmethod; struct Animal { diff --git a/test/compile_fail_weak_virtual_ptr_parameter.cpp b/test/compile_fail_weak_virtual_ptr_parameter.cpp index 4fb6de6a4..1be273d2d 100644 --- a/test/compile_fail_weak_virtual_ptr_parameter.cpp +++ b/test/compile_fail_weak_virtual_ptr_parameter.cpp @@ -10,6 +10,8 @@ #include #include +#include + using namespace boost::openmethod; struct Animal { diff --git a/test/dynamic_loading/main.cpp b/test/dynamic_loading/main.cpp index 0f863cd59..6de766953 100644 --- a/test/dynamic_loading/main.cpp +++ b/test/dynamic_loading/main.cpp @@ -25,6 +25,8 @@ #include #include +#include +#include using namespace boost::openmethod; diff --git a/test/dynamic_loading/overrider.cpp b/test/dynamic_loading/overrider.cpp index d3ca07a3a..ef2e38308 100644 --- a/test/dynamic_loading/overrider.cpp +++ b/test/dynamic_loading/overrider.cpp @@ -11,6 +11,8 @@ #include "shared_overrider.hpp" #include "../test_classes.hpp" +#include + #if defined(_WIN32) || defined(__CYGWIN__) #include #else diff --git a/test/implicit_shared_libraries/default_registry/lib.cpp b/test/implicit_shared_libraries/default_registry/lib.cpp index f584ad7ba..c803bc2c6 100644 --- a/test/implicit_shared_libraries/default_registry/lib.cpp +++ b/test/implicit_shared_libraries/default_registry/lib.cpp @@ -13,6 +13,8 @@ #include "lib.hpp" #include "../../test_classes.hpp" +#include + using namespace boost::openmethod; // The one definition of the shared state. It carries no visibility attribute: diff --git a/test/mix_release_debug/main.cpp b/test/mix_release_debug/main.cpp index 98ce804ee..9b5473fcc 100644 --- a/test/mix_release_debug/main.cpp +++ b/test/mix_release_debug/main.cpp @@ -11,6 +11,8 @@ #include "lib.hpp" +#include + using namespace boost::openmethod; BOOST_AUTO_TEST_CASE(mix_release_debug) { diff --git a/test/test_adl_registry.cpp b/test/test_adl_registry.cpp index ad20edb01..209caabac 100644 --- a/test/test_adl_registry.cpp +++ b/test/test_adl_registry.cpp @@ -8,6 +8,7 @@ // and the methods that take the class as a virtual parameter. #include +#include #include #include diff --git a/test/test_adl_registry_hidden_friend.cpp b/test/test_adl_registry_hidden_friend.cpp index a7971f57e..35de6390d 100644 --- a/test/test_adl_registry_hidden_friend.cpp +++ b/test/test_adl_registry_hidden_friend.cpp @@ -8,6 +8,7 @@ // broken. Argument-dependent lookup finds it from anywhere. #include +#include #include #include diff --git a/test/test_adl_registry_inheritance.cpp b/test/test_adl_registry_inheritance.cpp index 5212b33da..f852608a0 100644 --- a/test/test_adl_registry_inheritance.cpp +++ b/test/test_adl_registry_inheritance.cpp @@ -13,6 +13,8 @@ #define BOOST_TEST_MODULE adl_registry_inheritance #include +#include + using namespace boost::openmethod; struct zoo_registry : default_registry::with {}; diff --git a/test/test_adl_registry_inplace.cpp b/test/test_adl_registry_inplace.cpp index 479ccbcf0..ce736aa26 100644 --- a/test/test_adl_registry_inplace.cpp +++ b/test/test_adl_registry_inplace.cpp @@ -8,6 +8,7 @@ // registry argument nor an override of the default-registry macro. #include +#include #include #include diff --git a/test/test_adl_registry_scan.cpp b/test/test_adl_registry_scan.cpp index f79b435e0..004a9c4ee 100644 --- a/test/test_adl_registry_scan.cpp +++ b/test/test_adl_registry_scan.cpp @@ -9,6 +9,7 @@ // the declaration wins outright, and no scan happens. #include +#include #include diff --git a/test/test_adl_registry_smart_ptr.cpp b/test/test_adl_registry_smart_ptr.cpp index 35ab94c63..687be65d8 100644 --- a/test/test_adl_registry_smart_ptr.cpp +++ b/test/test_adl_registry_smart_ptr.cpp @@ -8,6 +8,7 @@ #include #include +#include #include #include diff --git a/test/test_adl_registry_static_rtti.cpp b/test/test_adl_registry_static_rtti.cpp index 16ce07d50..9dde3ca81 100644 --- a/test/test_adl_registry_static_rtti.cpp +++ b/test/test_adl_registry_static_rtti.cpp @@ -9,6 +9,7 @@ // has to be created where the exact class is known. #include +#include #include #include diff --git a/test/test_adl_registry_two_registries.cpp b/test/test_adl_registry_two_registries.cpp index 3b8bc77fc..134d11ee1 100644 --- a/test/test_adl_registry_two_registries.cpp +++ b/test/test_adl_registry_two_registries.cpp @@ -8,6 +8,7 @@ // dispatch independently. #include +#include #include #include diff --git a/test/test_class_registration_own_state.cpp b/test/test_class_registration_own_state.cpp index fe39fb4f1..1ad4a5851 100644 --- a/test/test_class_registration_own_state.cpp +++ b/test/test_class_registration_own_state.cpp @@ -11,6 +11,8 @@ #define BOOST_TEST_MODULE class_registration_own_state #include +#include + using namespace boost::openmethod; BOOST_AUTO_TEST_CASE(registry_own_state) { diff --git a/test/test_core.cpp b/test/test_core.cpp index 136833fda..4618471eb 100644 --- a/test/test_core.cpp +++ b/test/test_core.cpp @@ -4,7 +4,10 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include +#include #include +#include #define BOOST_TEST_MODULE core #include diff --git a/test/test_custom_rtti_deferred.cpp b/test/test_custom_rtti_deferred.cpp index d818c0587..32e83e668 100644 --- a/test/test_custom_rtti_deferred.cpp +++ b/test/test_custom_rtti_deferred.cpp @@ -12,6 +12,8 @@ struct test_registry; #include "test_classes.hpp" #include +#include +#include namespace { constexpr std::size_t non_polymorphic_high_bit = std::size_t(1) diff --git a/test/test_custom_rtti_simple.cpp b/test/test_custom_rtti_simple.cpp index 9c4e2328d..195253d86 100644 --- a/test/test_custom_rtti_simple.cpp +++ b/test/test_custom_rtti_simple.cpp @@ -12,6 +12,8 @@ struct test_registry; #include "test_classes.hpp" #include +#include +#include namespace { constexpr std::size_t non_polymorphic_high_bit = std::size_t(1) diff --git a/test/test_custom_rtti_simple_projection.cpp b/test/test_custom_rtti_simple_projection.cpp index 15930b9c7..5c4914cb3 100644 --- a/test/test_custom_rtti_simple_projection.cpp +++ b/test/test_custom_rtti_simple_projection.cpp @@ -83,6 +83,9 @@ struct test_registry : #include #include +#include +#include + using namespace boost::openmethod; BOOST_OPENMETHOD_TEST_CLASSES(Animal, Dog, Cat); diff --git a/test/test_custom_rtti_virtual_base.cpp b/test/test_custom_rtti_virtual_base.cpp index 2c259d9e3..9d5820462 100644 --- a/test/test_custom_rtti_virtual_base.cpp +++ b/test/test_custom_rtti_virtual_base.cpp @@ -12,6 +12,8 @@ struct test_registry; #include "test_classes.hpp" #include +#include +#include namespace { constexpr std::size_t non_polymorphic_high_bit = std::size_t(1) diff --git a/test/test_dispatch_boost_any.cpp b/test/test_dispatch_boost_any.cpp index e79cf8ef6..8601ddd5c 100644 --- a/test/test_dispatch_boost_any.cpp +++ b/test/test_dispatch_boost_any.cpp @@ -3,7 +3,9 @@ // See accompanying file LICENSE_1_0.txt // or copy at http://www.boost.org/LICENSE_1_0.txt) +#include #include +#include #include #include diff --git a/test/test_dispatch_intrusive_ptr.cpp b/test/test_dispatch_intrusive_ptr.cpp index 58cdbdcce..977c95fd5 100644 --- a/test/test_dispatch_intrusive_ptr.cpp +++ b/test/test_dispatch_intrusive_ptr.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include diff --git a/test/test_dispatch_minimal_cover_hash.cpp b/test/test_dispatch_minimal_cover_hash.cpp index 1cbcb9c3d..5e1aaf715 100644 --- a/test/test_dispatch_minimal_cover_hash.cpp +++ b/test/test_dispatch_minimal_cover_hash.cpp @@ -39,8 +39,10 @@ struct test_registry : #if BOOST_OPENMETHOD_HAS_PEXT +#include #include #include +#include using namespace boost::openmethod; diff --git a/test/test_dispatch_minimal_perfect_hash.cpp b/test/test_dispatch_minimal_perfect_hash.cpp index c107c5998..9dc69286b 100644 --- a/test/test_dispatch_minimal_perfect_hash.cpp +++ b/test/test_dispatch_minimal_perfect_hash.cpp @@ -24,8 +24,10 @@ struct test_registry : #define BOOST_TEST_MODULE dispatch_minimal_perfect_hash #include +#include #include #include +#include using namespace boost::openmethod; diff --git a/test/test_dispatch_rvalue_refs.cpp b/test/test_dispatch_rvalue_refs.cpp index 8a1255cb4..c74f3e5cc 100644 --- a/test/test_dispatch_rvalue_refs.cpp +++ b/test/test_dispatch_rvalue_refs.cpp @@ -4,6 +4,7 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #include diff --git a/test/test_dispatch_std_any.cpp b/test/test_dispatch_std_any.cpp index ac54b5ef3..098abdfff 100644 --- a/test/test_dispatch_std_any.cpp +++ b/test/test_dispatch_std_any.cpp @@ -3,8 +3,11 @@ // See accompanying file LICENSE_1_0.txt // or copy at http://www.boost.org/LICENSE_1_0.txt) +#include #include #include +#include +#include #include #include diff --git a/test/test_dispatch_two_level_hash.cpp b/test/test_dispatch_two_level_hash.cpp index 759653fdf..5f5a8560a 100644 --- a/test/test_dispatch_two_level_hash.cpp +++ b/test/test_dispatch_two_level_hash.cpp @@ -24,8 +24,10 @@ struct test_registry : #define BOOST_TEST_MODULE dispatch_two_level_hash #include +#include #include #include +#include using namespace boost::openmethod; diff --git a/test/test_dispatch_unique_ptr.cpp b/test/test_dispatch_unique_ptr.cpp index 004e653e1..9a0123f7b 100644 --- a/test/test_dispatch_unique_ptr.cpp +++ b/test/test_dispatch_unique_ptr.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #include diff --git a/test/test_hash_policies.cpp b/test/test_hash_policies.cpp index c2886fd3f..fdd3244e7 100644 --- a/test/test_hash_policies.cpp +++ b/test/test_hash_policies.cpp @@ -24,9 +24,11 @@ #include #include +#include #include #include #include +#include #include namespace bom = boost::openmethod; diff --git a/test/test_initialize_context.cpp b/test/test_initialize_context.cpp index 6a3dcd596..0030c4751 100644 --- a/test/test_initialize_context.cpp +++ b/test/test_initialize_context.cpp @@ -21,6 +21,7 @@ #include "test_util.hpp" +#include #include #include #include diff --git a/test/test_inplace_vptr.cpp b/test/test_inplace_vptr.cpp index a20facfd7..41c1a1f38 100644 --- a/test/test_inplace_vptr.cpp +++ b/test/test_inplace_vptr.cpp @@ -12,6 +12,8 @@ struct test_registry; #include #include +#include +#include #include namespace bom = boost::openmethod; diff --git a/test/test_n2216_covariant_return_type.cpp b/test/test_n2216_covariant_return_type.cpp index 0e66fcd82..9b6f3c5c9 100644 --- a/test/test_n2216_covariant_return_type.cpp +++ b/test/test_n2216_covariant_return_type.cpp @@ -4,6 +4,7 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #include diff --git a/test/test_policies.cpp b/test/test_policies.cpp index 46ed89626..cd3b7f8a2 100644 --- a/test/test_policies.cpp +++ b/test/test_policies.cpp @@ -4,6 +4,7 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #define BOOST_TEST_MODULE policies diff --git a/test/test_reflection.cpp b/test/test_reflection.cpp index 429db115e..60f74bdbd 100644 --- a/test/test_reflection.cpp +++ b/test/test_reflection.cpp @@ -8,6 +8,7 @@ // reflection there is nothing to test, and the whole file reduces to one test // case that says so. +#include #include #include #include diff --git a/test/test_runtime_errors_bad_call.cpp b/test/test_runtime_errors_bad_call.cpp index 7274e0c36..a26abef70 100644 --- a/test/test_runtime_errors_bad_call.cpp +++ b/test/test_runtime_errors_bad_call.cpp @@ -12,6 +12,8 @@ #define BOOST_TEST_MODULE runtime_errors_bad_call #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_bad_call_type_ids.cpp b/test/test_runtime_errors_bad_call_type_ids.cpp index d22126bf1..c13d8e243 100644 --- a/test/test_runtime_errors_bad_call_type_ids.cpp +++ b/test/test_runtime_errors_bad_call_type_ids.cpp @@ -12,6 +12,8 @@ #define BOOST_TEST_MODULE runtime_errors_bad_call_type_ids #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_bad_call_type_ids_smart_ptr.cpp b/test/test_runtime_errors_bad_call_type_ids_smart_ptr.cpp index e89bdd521..d6f4a9d8d 100644 --- a/test/test_runtime_errors_bad_call_type_ids_smart_ptr.cpp +++ b/test/test_runtime_errors_bad_call_type_ids_smart_ptr.cpp @@ -13,6 +13,8 @@ #define BOOST_TEST_MODULE runtime_errors_bad_call_type_ids_smart_ptr #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_call_unknown_class.cpp b/test/test_runtime_errors_call_unknown_class.cpp index 6530eb2dd..037792185 100644 --- a/test/test_runtime_errors_call_unknown_class.cpp +++ b/test/test_runtime_errors_call_unknown_class.cpp @@ -12,6 +12,8 @@ #define BOOST_TEST_MODULE runtime_errors_call_unknown_class #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_duplicate_overrider.cpp b/test/test_runtime_errors_duplicate_overrider.cpp index e2e064eb1..7d9b4aff0 100644 --- a/test/test_runtime_errors_duplicate_overrider.cpp +++ b/test/test_runtime_errors_duplicate_overrider.cpp @@ -12,6 +12,8 @@ #define BOOST_TEST_MODULE runtime_errors_duplicate_overrider #include +#include + using namespace boost::openmethod; using capture = capture_errors; diff --git a/test/test_runtime_errors_initialize_unknown_class.cpp b/test/test_runtime_errors_initialize_unknown_class.cpp index 1dc508568..feb1d1d71 100644 --- a/test/test_runtime_errors_initialize_unknown_class.cpp +++ b/test/test_runtime_errors_initialize_unknown_class.cpp @@ -12,6 +12,8 @@ #define BOOST_TEST_MODULE runtime_errors_initialize_unknown_class #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_no_initialization.cpp b/test/test_runtime_errors_no_initialization.cpp index 48abf921d..76d676d30 100644 --- a/test/test_runtime_errors_no_initialization.cpp +++ b/test/test_runtime_errors_no_initialization.cpp @@ -13,6 +13,8 @@ #define BOOST_TEST_MODULE runtime_errors_no_initialization #include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_runtime_errors_throw_error.cpp b/test/test_runtime_errors_throw_error.cpp index 352b697df..b73b2b87f 100644 --- a/test/test_runtime_errors_throw_error.cpp +++ b/test/test_runtime_errors_throw_error.cpp @@ -19,6 +19,9 @@ struct test_registry : #define BOOST_TEST_MODULE runtime_errors_throw_error #include +#include +#include + using namespace boost::openmethod; using namespace test_matrices; diff --git a/test/test_shared_virtual_ptr_dispatch.cpp b/test/test_shared_virtual_ptr_dispatch.cpp index f59ff804f..35dc3a93a 100644 --- a/test/test_shared_virtual_ptr_dispatch.cpp +++ b/test/test_shared_virtual_ptr_dispatch.cpp @@ -12,6 +12,8 @@ #include "test_util.hpp" +#include + using boost::mp11::mp_list; using namespace boost::openmethod; using namespace boost::openmethod::detail; diff --git a/test/test_shared_virtual_ptr_value_semantics.cpp b/test/test_shared_virtual_ptr_value_semantics.cpp index e79eaf6dc..cef37be12 100644 --- a/test/test_shared_virtual_ptr_value_semantics.cpp +++ b/test/test_shared_virtual_ptr_value_semantics.cpp @@ -13,6 +13,8 @@ #include "test_virtual_ptr_value_semantics.hpp" #include +#include +#include static_assert(SameSmartPtr< std::shared_ptr, std::shared_ptr, default_registry>); diff --git a/test/test_slot_allocator.cpp b/test/test_slot_allocator.cpp index 0e4e36ea5..a9f563718 100644 --- a/test/test_slot_allocator.cpp +++ b/test/test_slot_allocator.cpp @@ -4,14 +4,20 @@ // or copy at http://www.boost.org/LICENSE_1_0.txt) #include +#include #include #include #include #include #include #include +#include +#include #include +#include #include +#include +#include #include #include diff --git a/test/test_smart_virtual_ptr_value_semantics.cpp b/test/test_smart_virtual_ptr_value_semantics.cpp index 47b6333dc..0eef11ac0 100644 --- a/test/test_smart_virtual_ptr_value_semantics.cpp +++ b/test/test_smart_virtual_ptr_value_semantics.cpp @@ -16,6 +16,8 @@ #include "test_virtual_ptr_value_semantics.hpp" #include +#include +#include #ifdef BOOST_GCC #pragma GCC diagnostic ignored "-Wunused-local-typedefs" diff --git a/test/test_static_rtti.cpp b/test/test_static_rtti.cpp index 1c658e84c..5bb04a02e 100644 --- a/test/test_static_rtti.cpp +++ b/test/test_static_rtti.cpp @@ -19,6 +19,8 @@ struct static_registry : #include "test_classes.hpp" +#include + struct Animal {}; struct Dog : Animal {}; diff --git a/test/test_static_rtti_errors.cpp b/test/test_static_rtti_errors.cpp index 1a0d9c977..dd07561c9 100644 --- a/test/test_static_rtti_errors.cpp +++ b/test/test_static_rtti_errors.cpp @@ -20,6 +20,7 @@ #include +#include #include #include #include diff --git a/test/test_unique_virtual_ptr_value_semantics.cpp b/test/test_unique_virtual_ptr_value_semantics.cpp index d3a1a4b30..8b20d2e63 100644 --- a/test/test_unique_virtual_ptr_value_semantics.cpp +++ b/test/test_unique_virtual_ptr_value_semantics.cpp @@ -11,6 +11,8 @@ #include "test_virtual_ptr_value_semantics.hpp" #include +#include +#include using namespace detail; diff --git a/test/test_util.hpp b/test/test_util.hpp index 824301bb3..cb5fe8a7b 100644 --- a/test/test_util.hpp +++ b/test/test_util.hpp @@ -8,6 +8,7 @@ #include #include +#include #include #include diff --git a/test/test_virtual_ptr_dispatch.cpp b/test/test_virtual_ptr_dispatch.cpp index eb3a84559..9b61ff92e 100644 --- a/test/test_virtual_ptr_dispatch.cpp +++ b/test/test_virtual_ptr_dispatch.cpp @@ -11,6 +11,8 @@ #include "test_util.hpp" +#include + using boost::mp11::mp_list; using namespace boost::openmethod; using namespace boost::openmethod::detail; diff --git a/test/test_virtual_ptr_final.cpp b/test/test_virtual_ptr_final.cpp index 29be3c635..cbf87d642 100644 --- a/test/test_virtual_ptr_final.cpp +++ b/test/test_virtual_ptr_final.cpp @@ -11,6 +11,8 @@ #include "test_util.hpp" +#include + using boost::mp11::mp_list; using namespace boost::openmethod; using namespace boost::openmethod::detail; diff --git a/test/test_virtual_ptr_value_semantics.cpp b/test/test_virtual_ptr_value_semantics.cpp index c5e716f0b..f1f420f9e 100644 --- a/test/test_virtual_ptr_value_semantics.cpp +++ b/test/test_virtual_ptr_value_semantics.cpp @@ -8,6 +8,11 @@ #include "test_virtual_ptr_value_semantics.hpp" +#include +#include +#include +#include + BOOST_AUTO_TEST_CASE_TEMPLATE( plain_virtual_ptr_value, Registry, test_policies) { static_assert(std::is_same_v< diff --git a/test/test_weak_virtual_ptr.cpp b/test/test_weak_virtual_ptr.cpp index 29e413ac0..32c04c2cc 100644 --- a/test/test_weak_virtual_ptr.cpp +++ b/test/test_weak_virtual_ptr.cpp @@ -14,6 +14,7 @@ #include #include #include +#include // A weak virtual_ptr is not a virtual_ptr at all: neither a smart one in the // `IsSmartPtr` sense (no `virtual_traits`, no `rebind`) nor a plain one.