passenger 6.1.0 → 6.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +32 -2
- data/Rakefile +6 -13
- data/bin/passenger-install-apache2-module +15 -19
- data/bin/passenger-install-nginx-module +42 -44
- data/bin/passenger-status +9 -10
- data/build/common_library.rb +4 -4
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
- data/build/test_basics.rb +4 -3
- data/dev/copy_boost_headers +54 -40
- data/dev/ruby_server.rb +1 -1
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +94 -110
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/addressof.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag_impl.hpp +52 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_impl.hpp +641 -285
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +593 -260
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +37 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_fp_cast.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas_based_exchange.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/chrono.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/classify.hpp +16 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +25 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch32.hpp +204 -97
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch64.hpp +251 -122
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_alpha.hpp +56 -56
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_arm.hpp +129 -129
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_ppc.hpp +253 -125
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_sparc.hpp +25 -25
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +193 -126
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_arm.hpp +57 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +96 -97
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_cas_based.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_atomic.hpp +27 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_sync.hpp +39 -37
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_linux_arm.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extending_cas_based_arithmetic.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_generic.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch32.hpp +170 -98
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch64.hpp +209 -119
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_arm.hpp +95 -95
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_ppc.hpp +148 -76
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_x86.hpp +293 -123
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_generic.hpp +87 -71
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_arm.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_x86.hpp +88 -88
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_operations.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch32.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch64.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_alpha.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_arm.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_ppc.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_sparc.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_x86.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_arm.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_x86.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations_emulated.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_atomic.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_sync.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_linux_arm.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_generic.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +110 -49
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_atomic_memory_order_utils.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/has_posix_clock_traits.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_conversions.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +69 -30
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/intptr.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lock_pool.hpp +51 -31
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/memory_order_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/once_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm_common.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc_common.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_traits.hpp +31 -31
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/alignment_of.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/has_unique_object_representations.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_floating_point.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_iec559.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_integral.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_signed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_copyable.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_default_constructible.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_signed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_unsigned.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_darwin_ulock.hpp +90 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_dragonfly_umtx.hpp +80 -11
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +160 -15
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_freebsd_umtx.hpp +327 -38
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_futex.hpp +276 -33
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_generic.hpp +260 -20
- data/src/cxx_supportlib/vendor-modified/boost/atomic/fences.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/posix_clock_traits_fwd.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/wait_result.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +108 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +1235 -1009
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +23 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +88 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +72 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +31 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +37 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +23 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +72 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +3 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +54 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/devector.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +32 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +27 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +37 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +23 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +41 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -8
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_is_avalanching.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +29 -29
- data/src/cxx_supportlib/vendor-modified/boost/core/cmath.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +15 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/default_allocator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/demangle.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/assert.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_sleep.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/static_assert.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +16 -10
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +35 -27
- data/src/cxx_supportlib/vendor-modified/boost/core/scoped_enum.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +20 -9
- data/src/cxx_supportlib/vendor-modified/boost/cregex.hpp +0 -5
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/foreach.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_rebind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +43 -64
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_def.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_undef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/eval_if_default.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +103 -117
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/conjunction.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/disjunction.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/negation.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/type_identity.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +32 -38
- data/src/cxx_supportlib/vendor-modified/boost/iterator/enable_if_convertible.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/interoperable.hpp +22 -34
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +162 -309
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_categories.hpp +52 -161
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +804 -977
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_traits.hpp +24 -17
- data/src/cxx_supportlib/vendor-modified/boost/iterator/min_category.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/minimum_category.hpp +11 -73
- data/src/cxx_supportlib/vendor-modified/boost/iterator/reverse_iterator.hpp +56 -57
- data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +123 -156
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +36 -33
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +43 -50
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +23 -27
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/type_traits.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +8 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +1 -12
- data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +8 -26
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +11 -44
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/set.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/and.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/ptr_to_ref.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitand.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitor.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/or.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +0 -13
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_256.hpp +190 -190
- data/src/cxx_supportlib/vendor-modified/boost/random/beta_distribution.hpp +12 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/config.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/size.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/xoshiro_base.hpp +472 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/discrete_distribution.hpp +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/random/gamma_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/generalized_inverse_gaussian_distribution.hpp +339 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +12 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/inverse_gaussian_distribution.hpp +226 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/mersenne_twister.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/mixmax.hpp +63 -63
- data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_constant_distribution.hpp +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_linear_distribution.hpp +8 -11
- data/src/cxx_supportlib/vendor-modified/boost/random/seed_seq.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/xoshiro.hpp +488 -0
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/has_member_size.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/msvc_has_iterator_workaround.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/size_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +35 -18
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +18 -101
- data/src/cxx_supportlib/vendor-modified/boost/regex/pattern_except.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/object_cache.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/regex_traits.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/user.hpp +4 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex.hpp +63 -17
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_creator.hpp +71 -16
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +22 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/c_regex_traits.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/char_regex_traits.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cpp_regex_traits.hpp +11 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cregex.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/error_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +40 -38
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_category.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_traits.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_flags.hpp +39 -37
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_results.hpp +46 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/object_cache.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/pattern_except.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher.hpp +57 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_common.hpp +21 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_non_recursive.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regbase.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_format.hpp +23 -18
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_fwd.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_grep.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_iterator.hpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_match.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_merge.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_raw_buffer.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_replace.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_search.hpp +12 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_split.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_token_iterator.hpp +16 -11
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits_defaults.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/states.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/sub_match.hpp +54 -49
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/syntax_type.hpp +64 -62
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_iterator.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_token_iterator.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex_fwd.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +1 -43
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/deprecated_macros.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +2 -77
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +1 -64
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +0 -77
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_cxx20_constexpr.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +5 -28
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +41 -40
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +0 -18
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +31 -10
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +34 -8
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/{unordered_printers.hpp → detail/unordered_printers.hpp} +34 -36
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +6 -49
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/nginx_module/ContentHandler.c +2 -0
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +5 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +6 -13
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +29 -30
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- metadata +26 -99
- data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +0 -47
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_sunos.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +0 -28
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +0 -68
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/conditional.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/integral_constant.hpp +0 -46
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_enum.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_function.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_nothrow_default_constructible.hpp +0 -46
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/cerrno.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +0 -195
- data/src/cxx_supportlib/vendor-modified/boost/detail/select_type.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/enable_if.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/internals.hpp +0 -35
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +0 -120
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_debug.cpp +0 -59
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/static_mutex.cpp +0 -189
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/regex/config/borland.hpp +0 -72
- data/src/cxx_supportlib/vendor-modified/boost/regex/config/cwchar.hpp +0 -207
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/static_mutex.hpp +0 -182
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +0 -797
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +0 -1598
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +0 -3174
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/c_regex_traits.hpp +0 -511
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/char_regex_traits.hpp +0 -81
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +0 -1237
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cregex.hpp +0 -213
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/error_type.hpp +0 -59
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/icu.hpp +0 -1516
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/indexed_bit_flag.hpp +0 -54
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_category.hpp +0 -91
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_traits.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +0 -161
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +0 -716
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +0 -183
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/object_cache.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/pattern_except.hpp +0 -128
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +0 -645
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +0 -1030
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +0 -1947
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +0 -1131
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/primary_transform.hpp +0 -146
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/protected_call.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regbase.hpp +0 -180
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -1158
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_fwd.hpp +0 -73
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_grep.hpp +0 -155
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -195
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_match.hpp +0 -382
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_merge.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +0 -241
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_replace.hpp +0 -99
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_search.hpp +0 -217
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +0 -174
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -327
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +0 -189
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +0 -997
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +0 -237
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/states.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/sub_match.hpp +0 -516
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/syntax_type.hpp +0 -105
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +0 -185
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +0 -360
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +0 -871
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +0 -1229
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc.hpp +0 -79
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_atomic.hpp +0 -63
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_x86.hpp +0 -88
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_pt.hpp +0 -104
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_spin.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_sync.hpp +0 -72
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +0 -163
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +0 -152
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +0 -185
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +0 -148
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +0 -170
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +0 -200
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +0 -194
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +0 -179
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +0 -186
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +0 -147
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +0 -174
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +0 -141
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +0 -165
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +0 -163
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync_intrinsics.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +0 -128
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_nt.hpp +0 -96
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_pt.hpp +0 -86
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_sync.hpp +0 -94
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
// Distributed under the Boost Software License, Version 1.0.
|
|
16
16
|
// https://www.boost.org/LICENSE_1_0.txt
|
|
17
17
|
|
|
18
|
+
#include <boost/core/detail/static_assert.hpp>
|
|
18
19
|
#include <boost/config.hpp>
|
|
19
|
-
#include <boost/static_assert.hpp>
|
|
20
20
|
#include <boost/cstdint.hpp>
|
|
21
21
|
#include <limits>
|
|
22
22
|
#include <cstring>
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
# pragma intrinsic(_BitScanForward)
|
|
29
29
|
# pragma intrinsic(_BitScanReverse)
|
|
30
30
|
|
|
31
|
-
# if defined(_M_X64)
|
|
31
|
+
# if defined(_M_X64) || defined(_M_ARM64)
|
|
32
32
|
# pragma intrinsic(_BitScanForward64)
|
|
33
33
|
# pragma intrinsic(_BitScanReverse64)
|
|
34
34
|
# endif
|
|
@@ -80,7 +80,7 @@ BOOST_CONSTEXPR To bit_cast( From const & from ) BOOST_NOEXCEPT
|
|
|
80
80
|
template<class To, class From>
|
|
81
81
|
To bit_cast( From const & from ) BOOST_NOEXCEPT
|
|
82
82
|
{
|
|
83
|
-
|
|
83
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(To) == sizeof(From) );
|
|
84
84
|
|
|
85
85
|
To to;
|
|
86
86
|
std::memcpy( &to, &from, sizeof(To) );
|
|
@@ -126,7 +126,7 @@ BOOST_CONSTEXPR inline int countl_impl( boost::ulong_long_type x ) BOOST_NOEXCEP
|
|
|
126
126
|
template<class T>
|
|
127
127
|
BOOST_CONSTEXPR int countl_zero( T x ) BOOST_NOEXCEPT
|
|
128
128
|
{
|
|
129
|
-
|
|
129
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
130
130
|
|
|
131
131
|
return boost::core::detail::countl_impl( x );
|
|
132
132
|
}
|
|
@@ -230,7 +230,7 @@ inline int countl_impl( boost::uint16_t x ) BOOST_NOEXCEPT
|
|
|
230
230
|
|
|
231
231
|
#endif
|
|
232
232
|
|
|
233
|
-
#if defined(_MSC_VER) && defined(_M_X64) && defined(BOOST_CORE_HAS_BUILTIN_ISCONSTEVAL)
|
|
233
|
+
#if defined(_MSC_VER) && (defined(_M_X64) || defined(_M_ARM64)) && defined(BOOST_CORE_HAS_BUILTIN_ISCONSTEVAL)
|
|
234
234
|
|
|
235
235
|
BOOST_CXX14_CONSTEXPR inline int countl_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
236
236
|
{
|
|
@@ -255,7 +255,7 @@ BOOST_CXX14_CONSTEXPR inline int countl_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
-
#elif defined(_MSC_VER) && defined(_M_X64)
|
|
258
|
+
#elif defined(_MSC_VER) && (defined(_M_X64) || defined(_M_ARM64))
|
|
259
259
|
|
|
260
260
|
inline int countl_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
261
261
|
{
|
|
@@ -296,9 +296,9 @@ inline int countl_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
|
296
296
|
template<class T>
|
|
297
297
|
BOOST_CXX14_CONSTEXPR int countl_zero( T x ) BOOST_NOEXCEPT
|
|
298
298
|
{
|
|
299
|
-
|
|
299
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
300
300
|
|
|
301
|
-
|
|
301
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(T) == sizeof(boost::uint8_t) || sizeof(T) == sizeof(boost::uint16_t) || sizeof(T) == sizeof(boost::uint32_t) || sizeof(T) == sizeof(boost::uint64_t) );
|
|
302
302
|
|
|
303
303
|
BOOST_IF_CONSTEXPR ( sizeof(T) == sizeof(boost::uint8_t) )
|
|
304
304
|
{
|
|
@@ -323,7 +323,7 @@ BOOST_CXX14_CONSTEXPR int countl_zero( T x ) BOOST_NOEXCEPT
|
|
|
323
323
|
template<class T>
|
|
324
324
|
BOOST_CONSTEXPR int countl_one( T x ) BOOST_NOEXCEPT
|
|
325
325
|
{
|
|
326
|
-
|
|
326
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
327
327
|
|
|
328
328
|
return boost::core::countl_zero( static_cast<T>( ~x ) );
|
|
329
329
|
}
|
|
@@ -365,7 +365,7 @@ BOOST_CONSTEXPR inline int countr_impl( boost::ulong_long_type x ) BOOST_NOEXCEP
|
|
|
365
365
|
template<class T>
|
|
366
366
|
BOOST_CONSTEXPR int countr_zero( T x ) BOOST_NOEXCEPT
|
|
367
367
|
{
|
|
368
|
-
|
|
368
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
369
369
|
|
|
370
370
|
return boost::core::detail::countr_impl( x );
|
|
371
371
|
}
|
|
@@ -455,7 +455,7 @@ inline int countr_impl( boost::uint16_t x ) BOOST_NOEXCEPT
|
|
|
455
455
|
|
|
456
456
|
#endif
|
|
457
457
|
|
|
458
|
-
#if defined(_MSC_VER) && defined(_M_X64) && defined(BOOST_CORE_HAS_BUILTIN_ISCONSTEVAL)
|
|
458
|
+
#if defined(_MSC_VER) && (defined(_M_X64) || defined(_M_ARM64)) && defined(BOOST_CORE_HAS_BUILTIN_ISCONSTEVAL)
|
|
459
459
|
|
|
460
460
|
BOOST_CXX14_CONSTEXPR inline int countr_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
461
461
|
{
|
|
@@ -480,7 +480,7 @@ BOOST_CXX14_CONSTEXPR inline int countr_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
|
480
480
|
}
|
|
481
481
|
}
|
|
482
482
|
|
|
483
|
-
#elif defined(_MSC_VER) && defined(_M_X64)
|
|
483
|
+
#elif defined(_MSC_VER) && (defined(_M_X64) || defined(_M_ARM64))
|
|
484
484
|
|
|
485
485
|
inline int countr_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
486
486
|
{
|
|
@@ -521,9 +521,9 @@ inline int countr_impl( boost::uint64_t x ) BOOST_NOEXCEPT
|
|
|
521
521
|
template<class T>
|
|
522
522
|
BOOST_CXX14_CONSTEXPR int countr_zero( T x ) BOOST_NOEXCEPT
|
|
523
523
|
{
|
|
524
|
-
|
|
524
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
525
525
|
|
|
526
|
-
|
|
526
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(T) == sizeof(boost::uint8_t) || sizeof(T) == sizeof(boost::uint16_t) || sizeof(T) == sizeof(boost::uint32_t) || sizeof(T) == sizeof(boost::uint64_t) );
|
|
527
527
|
|
|
528
528
|
BOOST_IF_CONSTEXPR ( sizeof(T) == sizeof(boost::uint8_t) )
|
|
529
529
|
{
|
|
@@ -548,7 +548,7 @@ BOOST_CXX14_CONSTEXPR int countr_zero( T x ) BOOST_NOEXCEPT
|
|
|
548
548
|
template<class T>
|
|
549
549
|
BOOST_CONSTEXPR int countr_one( T x ) BOOST_NOEXCEPT
|
|
550
550
|
{
|
|
551
|
-
|
|
551
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
552
552
|
|
|
553
553
|
return boost::core::countr_zero( static_cast<T>( ~x ) );
|
|
554
554
|
}
|
|
@@ -598,7 +598,7 @@ BOOST_CORE_POPCOUNT_CONSTEXPR inline int popcount_impl( boost::ulong_long_type x
|
|
|
598
598
|
template<class T>
|
|
599
599
|
BOOST_CONSTEXPR int popcount( T x ) BOOST_NOEXCEPT
|
|
600
600
|
{
|
|
601
|
-
|
|
601
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
602
602
|
|
|
603
603
|
return boost::core::detail::popcount_impl( x );
|
|
604
604
|
}
|
|
@@ -631,9 +631,9 @@ BOOST_CXX14_CONSTEXPR inline int popcount_impl( boost::uint64_t x ) BOOST_NOEXCE
|
|
|
631
631
|
template<class T>
|
|
632
632
|
BOOST_CXX14_CONSTEXPR int popcount( T x ) BOOST_NOEXCEPT
|
|
633
633
|
{
|
|
634
|
-
|
|
634
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
635
635
|
|
|
636
|
-
|
|
636
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(T) <= sizeof(boost::uint64_t) );
|
|
637
637
|
|
|
638
638
|
BOOST_IF_CONSTEXPR ( sizeof(T) <= sizeof(boost::uint32_t) )
|
|
639
639
|
{
|
|
@@ -652,7 +652,7 @@ BOOST_CXX14_CONSTEXPR int popcount( T x ) BOOST_NOEXCEPT
|
|
|
652
652
|
template<class T>
|
|
653
653
|
BOOST_CXX14_CONSTEXPR T rotl( T x, int s ) BOOST_NOEXCEPT
|
|
654
654
|
{
|
|
655
|
-
|
|
655
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
656
656
|
|
|
657
657
|
unsigned const mask = std::numeric_limits<T>::digits - 1;
|
|
658
658
|
return static_cast<T>( x << (static_cast<unsigned>( s ) & mask) | x >> (static_cast<unsigned>( -s ) & mask) );
|
|
@@ -661,7 +661,7 @@ BOOST_CXX14_CONSTEXPR T rotl( T x, int s ) BOOST_NOEXCEPT
|
|
|
661
661
|
template<class T>
|
|
662
662
|
BOOST_CXX14_CONSTEXPR T rotr( T x, int s ) BOOST_NOEXCEPT
|
|
663
663
|
{
|
|
664
|
-
|
|
664
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
665
665
|
|
|
666
666
|
unsigned const mask = std::numeric_limits<T>::digits - 1;
|
|
667
667
|
return static_cast<T>( x >> (static_cast<unsigned>( s ) & mask) | x << (static_cast<unsigned>( -s ) & mask) );
|
|
@@ -672,7 +672,7 @@ BOOST_CXX14_CONSTEXPR T rotr( T x, int s ) BOOST_NOEXCEPT
|
|
|
672
672
|
template<class T>
|
|
673
673
|
BOOST_CONSTEXPR bool has_single_bit( T x ) BOOST_NOEXCEPT
|
|
674
674
|
{
|
|
675
|
-
|
|
675
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
676
676
|
|
|
677
677
|
return x != 0 && ( x & ( x - 1 ) ) == 0;
|
|
678
678
|
}
|
|
@@ -683,7 +683,7 @@ BOOST_CONSTEXPR bool has_single_bit( T x ) BOOST_NOEXCEPT
|
|
|
683
683
|
template<class T>
|
|
684
684
|
BOOST_CONSTEXPR int bit_width( T x ) BOOST_NOEXCEPT
|
|
685
685
|
{
|
|
686
|
-
|
|
686
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
687
687
|
|
|
688
688
|
return std::numeric_limits<T>::digits - boost::core::countl_zero( x );
|
|
689
689
|
}
|
|
@@ -691,7 +691,7 @@ BOOST_CONSTEXPR int bit_width( T x ) BOOST_NOEXCEPT
|
|
|
691
691
|
template<class T>
|
|
692
692
|
BOOST_CONSTEXPR T bit_floor( T x ) BOOST_NOEXCEPT
|
|
693
693
|
{
|
|
694
|
-
|
|
694
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
695
695
|
|
|
696
696
|
return x == 0? T(0): static_cast<T>( T(1) << ( boost::core::bit_width( x ) - 1 ) );
|
|
697
697
|
}
|
|
@@ -703,7 +703,7 @@ BOOST_CXX14_CONSTEXPR inline boost::uint32_t bit_ceil_impl( boost::uint32_t x )
|
|
|
703
703
|
{
|
|
704
704
|
if( x == 0 )
|
|
705
705
|
{
|
|
706
|
-
return
|
|
706
|
+
return 1;
|
|
707
707
|
}
|
|
708
708
|
|
|
709
709
|
--x;
|
|
@@ -723,7 +723,7 @@ BOOST_CXX14_CONSTEXPR inline boost::uint64_t bit_ceil_impl( boost::uint64_t x )
|
|
|
723
723
|
{
|
|
724
724
|
if( x == 0 )
|
|
725
725
|
{
|
|
726
|
-
return
|
|
726
|
+
return 1;
|
|
727
727
|
}
|
|
728
728
|
|
|
729
729
|
--x;
|
|
@@ -745,9 +745,9 @@ BOOST_CXX14_CONSTEXPR inline boost::uint64_t bit_ceil_impl( boost::uint64_t x )
|
|
|
745
745
|
template<class T>
|
|
746
746
|
BOOST_CXX14_CONSTEXPR T bit_ceil( T x ) BOOST_NOEXCEPT
|
|
747
747
|
{
|
|
748
|
-
|
|
748
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer && !std::numeric_limits<T>::is_signed );
|
|
749
749
|
|
|
750
|
-
|
|
750
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(T) <= sizeof(boost::uint64_t) );
|
|
751
751
|
|
|
752
752
|
BOOST_IF_CONSTEXPR ( sizeof(T) <= sizeof(boost::uint32_t) )
|
|
753
753
|
{
|
|
@@ -922,9 +922,9 @@ BOOST_CXX14_CONSTEXPR inline boost::uint64_t byteswap_impl( boost::uint64_t x )
|
|
|
922
922
|
|
|
923
923
|
template<class T> BOOST_CXX14_CONSTEXPR T byteswap( T x ) BOOST_NOEXCEPT
|
|
924
924
|
{
|
|
925
|
-
|
|
925
|
+
BOOST_CORE_STATIC_ASSERT( std::numeric_limits<T>::is_integer );
|
|
926
926
|
|
|
927
|
-
|
|
927
|
+
BOOST_CORE_STATIC_ASSERT( sizeof(T) == sizeof(boost::uint8_t) || sizeof(T) == sizeof(boost::uint16_t) || sizeof(T) == sizeof(boost::uint32_t) || sizeof(T) == sizeof(boost::uint64_t) );
|
|
928
928
|
|
|
929
929
|
BOOST_IF_CONSTEXPR ( sizeof(T) == sizeof(boost::uint8_t) )
|
|
930
930
|
{
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
|
|
21
21
|
#if defined(BOOST_CORE_USE_GENERIC_CMATH) || (!defined(_MSC_VER) && !defined(FP_SUBNORMAL))
|
|
22
22
|
|
|
23
|
+
#include <boost/core/detail/static_assert.hpp>
|
|
23
24
|
#include <boost/cstdint.hpp>
|
|
24
|
-
#include <boost/static_assert.hpp>
|
|
25
25
|
#include <limits>
|
|
26
26
|
#include <cstring>
|
|
27
27
|
|
|
@@ -81,7 +81,7 @@ inline bool signbit( float x )
|
|
|
81
81
|
{
|
|
82
82
|
boost::int32_t y;
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
BOOST_CORE_STATIC_ASSERT( sizeof( x ) == sizeof( y ) );
|
|
85
85
|
|
|
86
86
|
std::memcpy( &y, &x, sizeof( y ) );
|
|
87
87
|
|
|
@@ -92,7 +92,7 @@ inline bool signbit( double x )
|
|
|
92
92
|
{
|
|
93
93
|
boost::int64_t y;
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
BOOST_CORE_STATIC_ASSERT( sizeof( x ) == sizeof( y ) );
|
|
96
96
|
|
|
97
97
|
std::memcpy( &y, &x, sizeof( y ) );
|
|
98
98
|
|
|
@@ -8,8 +8,20 @@ Distributed under the Boost Software License, Version 1.0.
|
|
|
8
8
|
#ifndef BOOST_CORE_DATA_HPP
|
|
9
9
|
#define BOOST_CORE_DATA_HPP
|
|
10
10
|
|
|
11
|
-
#include <
|
|
11
|
+
#include <iterator>
|
|
12
|
+
|
|
13
|
+
// Note: MSVC doesn't define __cpp_lib_nonmember_container_access but supports the feature even in C++14 mode
|
|
14
|
+
#if (defined(__cpp_lib_nonmember_container_access) && (__cpp_lib_nonmember_container_access >= 201411l)) || \
|
|
15
|
+
(defined(_MSC_VER) && (_MSC_VER >= 1900))
|
|
16
|
+
|
|
17
|
+
namespace boost {
|
|
18
|
+
using std::data;
|
|
19
|
+
} /* boost */
|
|
20
|
+
|
|
21
|
+
#else // (defined(__cpp_lib_nonmember_container_access) ...
|
|
22
|
+
|
|
12
23
|
#include <cstddef>
|
|
24
|
+
#include <initializer_list>
|
|
13
25
|
|
|
14
26
|
namespace boost {
|
|
15
27
|
|
|
@@ -43,4 +55,6 @@ data(std::initializer_list<T> l) noexcept
|
|
|
43
55
|
|
|
44
56
|
} /* boost */
|
|
45
57
|
|
|
58
|
+
#endif // (defined(__cpp_lib_nonmember_container_access) ...
|
|
59
|
+
|
|
46
60
|
#endif
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
#if defined( BOOST_CORE_HAS_CXXABI_H )
|
|
32
32
|
# include <cxxabi.h>
|
|
33
|
-
// For some
|
|
33
|
+
// For some architectures (mips, mips64, x86, x86_64) cxxabi.h in Android NDK is implemented by gabi++ library
|
|
34
34
|
// (https://android.googlesource.com/platform/ndk/+/master/sources/cxx-stl/gabi++/), which does not implement
|
|
35
35
|
// abi::__cxa_demangle(). We detect this implementation by checking the include guard here.
|
|
36
36
|
# if defined( __GABIXX_CXXABI_H__ )
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright 2025 Glen Joseph Fernandes
|
|
3
|
+
(glenjofe@gmail.com)
|
|
4
|
+
|
|
5
|
+
Distributed under the Boost Software License, Version 1.0.
|
|
6
|
+
(http://www.boost.org/LICENSE_1_0.txt)
|
|
7
|
+
*/
|
|
8
|
+
#undef BOOST_CORE_DETAIL_ASSERT
|
|
9
|
+
|
|
10
|
+
#if !defined(__clang__) && \
|
|
11
|
+
!defined(__INTEL_COMPILER) && \
|
|
12
|
+
defined(__GNUC__) && \
|
|
13
|
+
(__GNUC__ < 5)
|
|
14
|
+
#define BOOST_CORE_DETAIL_ASSERT(expr) void(0)
|
|
15
|
+
#else
|
|
16
|
+
#include <boost/assert.hpp>
|
|
17
|
+
#define BOOST_CORE_DETAIL_ASSERT(expr) BOOST_ASSERT(expr)
|
|
18
|
+
#endif
|
|
@@ -67,7 +67,7 @@ namespace core
|
|
|
67
67
|
|
|
68
68
|
inline void sp_thread_sleep() BOOST_NOEXCEPT
|
|
69
69
|
{
|
|
70
|
-
#if defined(BOOST_HAS_PTHREADS) && !defined(__ANDROID__)
|
|
70
|
+
#if defined(BOOST_HAS_PTHREADS) && !defined(__ANDROID__) && !defined(__OHOS__)
|
|
71
71
|
|
|
72
72
|
int oldst;
|
|
73
73
|
pthread_setcancelstate( PTHREAD_CANCEL_DISABLE, &oldst );
|
|
@@ -85,7 +85,7 @@ inline void sp_thread_sleep() BOOST_NOEXCEPT
|
|
|
85
85
|
|
|
86
86
|
nanosleep( &rqtp, 0 );
|
|
87
87
|
|
|
88
|
-
#if defined(BOOST_HAS_PTHREADS) && !defined(__ANDROID__)
|
|
88
|
+
#if defined(BOOST_HAS_PTHREADS) && !defined(__ANDROID__) && !defined(__OHOS__)
|
|
89
89
|
|
|
90
90
|
pthread_setcancelstate( oldst, &oldst );
|
|
91
91
|
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
#ifndef BOOST_CORE_DETAIL_STATIC_ASSERT_HPP_INCLUDED
|
|
2
|
+
#define BOOST_CORE_DETAIL_STATIC_ASSERT_HPP_INCLUDED
|
|
3
|
+
|
|
4
|
+
// Copyright 2025 Peter Dimov
|
|
5
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
6
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
7
|
+
|
|
8
|
+
#if defined(__cpp_static_assert) && __cpp_static_assert >= 200410L
|
|
9
|
+
|
|
10
|
+
#define BOOST_CORE_STATIC_ASSERT(...) static_assert(__VA_ARGS__, #__VA_ARGS__)
|
|
11
|
+
|
|
12
|
+
#else
|
|
13
|
+
|
|
14
|
+
#include <boost/config.hpp>
|
|
15
|
+
#include <cstddef>
|
|
16
|
+
|
|
17
|
+
namespace boost
|
|
18
|
+
{
|
|
19
|
+
namespace core
|
|
20
|
+
{
|
|
21
|
+
|
|
22
|
+
template<bool> struct STATIC_ASSERTION_FAILURE;
|
|
23
|
+
|
|
24
|
+
template<> struct STATIC_ASSERTION_FAILURE<true>
|
|
25
|
+
{
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
template<std::size_t> struct static_assert_test
|
|
29
|
+
{
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
} // namespace core
|
|
33
|
+
} // namespace boost
|
|
34
|
+
|
|
35
|
+
#define BOOST_CORE_STATIC_ASSERT(expr) \
|
|
36
|
+
typedef ::boost::core::static_assert_test< \
|
|
37
|
+
sizeof( ::boost::core::STATIC_ASSERTION_FAILURE<(expr)? true: false> ) \
|
|
38
|
+
> BOOST_JOIN(boost_static_assert_typedef_,__LINE__) BOOST_ATTRIBUTE_UNUSED
|
|
39
|
+
|
|
40
|
+
#endif
|
|
41
|
+
|
|
42
|
+
#endif // #ifndef BOOST_CORE_DETAIL_STATIC_ASSERT_HPP_INCLUDED
|
|
@@ -34,6 +34,9 @@
|
|
|
34
34
|
#if !defined(BOOST_NO_CXX20_HDR_CONCEPTS) // std::common_reference_with
|
|
35
35
|
# include <type_traits>
|
|
36
36
|
#endif
|
|
37
|
+
#if !defined(BOOST_NO_CXX20_HDR_FORMAT)
|
|
38
|
+
# include <format> // std::formatter
|
|
39
|
+
#endif
|
|
37
40
|
|
|
38
41
|
namespace boost
|
|
39
42
|
{
|
|
@@ -41,9 +44,6 @@ namespace boost
|
|
|
41
44
|
// forward declaration of boost::basic_string_view from Utility
|
|
42
45
|
template<class Ch, class Tr> class basic_string_view;
|
|
43
46
|
|
|
44
|
-
// forward declaration of boost::hash_range from ContainerHash
|
|
45
|
-
template<class It> std::size_t hash_range( It, It );
|
|
46
|
-
|
|
47
47
|
namespace core
|
|
48
48
|
{
|
|
49
49
|
namespace detail
|
|
@@ -381,7 +381,7 @@ public:
|
|
|
381
381
|
}
|
|
382
382
|
|
|
383
383
|
template<class End> BOOST_CXX14_CONSTEXPR basic_string_view( Ch const* first, End last,
|
|
384
|
-
typename boost::enable_if<boost::core::detail::is_same<End, Ch const
|
|
384
|
+
typename boost::enable_if<boost::core::detail::is_same<End, Ch const*>, int >::type = 0 ) BOOST_NOEXCEPT: p_( first ), n_( static_cast<size_type>( last - first ) )
|
|
385
385
|
{
|
|
386
386
|
BOOST_ASSERT( last - first >= 0 );
|
|
387
387
|
}
|
|
@@ -399,7 +399,7 @@ public:
|
|
|
399
399
|
#endif
|
|
400
400
|
|
|
401
401
|
template<class Ch2> basic_string_view( boost::basic_string_view<Ch2, std::char_traits<Ch2> > const& str,
|
|
402
|
-
typename boost::enable_if<boost::core::detail::is_same<Ch, Ch2
|
|
402
|
+
typename boost::enable_if<boost::core::detail::is_same<Ch, Ch2>, int >::type = 0 ) BOOST_NOEXCEPT: p_( str.data() ), n_( str.size() )
|
|
403
403
|
{
|
|
404
404
|
}
|
|
405
405
|
|
|
@@ -1181,11 +1181,6 @@ public:
|
|
|
1181
1181
|
}
|
|
1182
1182
|
|
|
1183
1183
|
#endif
|
|
1184
|
-
|
|
1185
|
-
inline friend std::size_t hash_value( basic_string_view const& sv )
|
|
1186
|
-
{
|
|
1187
|
-
return boost::hash_range( sv.begin(), sv.end() );
|
|
1188
|
-
}
|
|
1189
1184
|
};
|
|
1190
1185
|
|
|
1191
1186
|
// stream inserter
|
|
@@ -1269,4 +1264,15 @@ struct std::basic_common_reference<
|
|
|
1269
1264
|
|
|
1270
1265
|
#endif
|
|
1271
1266
|
|
|
1267
|
+
// std::format support
|
|
1268
|
+
|
|
1269
|
+
#if !defined(BOOST_NO_CXX20_HDR_FORMAT)
|
|
1270
|
+
|
|
1271
|
+
template<class Ch, class Ch2>
|
|
1272
|
+
struct std::formatter<boost::core::basic_string_view<Ch>, Ch2>: std::formatter<std::basic_string_view<Ch>, Ch2>
|
|
1273
|
+
{
|
|
1274
|
+
};
|
|
1275
|
+
|
|
1276
|
+
#endif
|
|
1277
|
+
|
|
1272
1278
|
#endif // #ifndef BOOST_CORE_STRING_VIEW_HPP_INCLUDED
|
|
@@ -551,39 +551,47 @@ inline void lwt_init()
|
|
|
551
551
|
#define BOOST_TEST_ALL_EQ(begin1, end1, begin2, end2) ( ::boost::detail::test_all_eq_impl(BOOST_LIGHTWEIGHT_TEST_OSTREAM, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, begin1, end1, begin2, end2) )
|
|
552
552
|
#define BOOST_TEST_ALL_WITH(begin1, end1, begin2, end2, predicate) ( ::boost::detail::test_all_with_impl(BOOST_LIGHTWEIGHT_TEST_OSTREAM, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, begin1, end1, begin2, end2, predicate) )
|
|
553
553
|
|
|
554
|
+
#if defined(BOOST_MSVC) && BOOST_MSVC < 1900
|
|
555
|
+
# define BOOST_LWT_DETAIL_WHILE_FALSE __pragma(warning(push)) __pragma(warning(disable:4127)) while(false) __pragma(warning(pop))
|
|
556
|
+
#else
|
|
557
|
+
# define BOOST_LWT_DETAIL_WHILE_FALSE while(false)
|
|
558
|
+
#endif
|
|
559
|
+
|
|
554
560
|
#ifndef BOOST_NO_EXCEPTIONS
|
|
555
|
-
#define BOOST_TEST_THROWS( EXPR, EXCEP )
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
561
|
+
#define BOOST_TEST_THROWS( EXPR, EXCEP ) \
|
|
562
|
+
do { \
|
|
563
|
+
try { \
|
|
564
|
+
EXPR; \
|
|
565
|
+
::boost::detail::throw_failed_impl \
|
|
566
|
+
(#EXPR, #EXCEP, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION); \
|
|
567
|
+
} \
|
|
568
|
+
catch(EXCEP const&) { \
|
|
569
|
+
::boost::detail::test_results(); \
|
|
570
|
+
} \
|
|
571
|
+
catch(...) { \
|
|
572
|
+
::boost::detail::throw_failed_impl \
|
|
573
|
+
(#EXPR, #EXCEP, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION); \
|
|
574
|
+
} \
|
|
575
|
+
} BOOST_LWT_DETAIL_WHILE_FALSE
|
|
569
576
|
#else
|
|
570
|
-
#define BOOST_TEST_THROWS( EXPR, EXCEP )
|
|
577
|
+
#define BOOST_TEST_THROWS( EXPR, EXCEP ) do {} BOOST_LWT_DETAIL_WHILE_FALSE
|
|
571
578
|
#endif
|
|
572
579
|
|
|
573
580
|
#ifndef BOOST_NO_EXCEPTIONS
|
|
574
|
-
# define BOOST_TEST_NO_THROW(EXPR)
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
::
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
581
|
+
# define BOOST_TEST_NO_THROW(EXPR) \
|
|
582
|
+
do { \
|
|
583
|
+
try { \
|
|
584
|
+
EXPR; \
|
|
585
|
+
} catch (const std::exception& e) { \
|
|
586
|
+
::boost::detail::no_throw_failed_impl \
|
|
587
|
+
(#EXPR, e.what(), __FILE__, __LINE__, BOOST_CURRENT_FUNCTION); \
|
|
588
|
+
} catch (...) { \
|
|
589
|
+
::boost::detail::no_throw_failed_impl \
|
|
590
|
+
(#EXPR, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION); \
|
|
591
|
+
} \
|
|
592
|
+
} BOOST_LWT_DETAIL_WHILE_FALSE
|
|
585
593
|
#else
|
|
586
|
-
# define BOOST_TEST_NO_THROW(EXPR) { EXPR; }
|
|
594
|
+
# define BOOST_TEST_NO_THROW(EXPR) do { EXPR; } BOOST_LWT_DETAIL_WHILE_FALSE
|
|
587
595
|
#endif
|
|
588
596
|
|
|
589
597
|
#endif // #ifndef BOOST_CORE_LIGHTWEIGHT_TEST_HPP
|
|
@@ -37,7 +37,7 @@ namespace boost
|
|
|
37
37
|
/**
|
|
38
38
|
* Casts a scoped enum to its underlying type.
|
|
39
39
|
*
|
|
40
|
-
* This function is useful when working with scoped enum classes, which
|
|
40
|
+
* This function is useful when working with scoped enum classes, which doesn't implicitly convert to the underlying type.
|
|
41
41
|
* @param v A scoped enum.
|
|
42
42
|
* @returns The underlying type.
|
|
43
43
|
* @throws No-throws.
|
|
@@ -8,6 +8,18 @@ Distributed under the Boost Software License, Version 1.0.
|
|
|
8
8
|
#ifndef BOOST_CORE_SIZE_HPP
|
|
9
9
|
#define BOOST_CORE_SIZE_HPP
|
|
10
10
|
|
|
11
|
+
#include <iterator>
|
|
12
|
+
|
|
13
|
+
// Note: MSVC doesn't define __cpp_lib_nonmember_container_access but supports the feature even in C++14 mode
|
|
14
|
+
#if (defined(__cpp_lib_nonmember_container_access) && (__cpp_lib_nonmember_container_access >= 201411l)) || \
|
|
15
|
+
(defined(_MSC_VER) && (_MSC_VER >= 1900))
|
|
16
|
+
|
|
17
|
+
namespace boost {
|
|
18
|
+
using std::size;
|
|
19
|
+
} /* boost */
|
|
20
|
+
|
|
21
|
+
#else // (defined(__cpp_lib_nonmember_container_access) ...
|
|
22
|
+
|
|
11
23
|
#include <cstddef>
|
|
12
24
|
|
|
13
25
|
namespace boost {
|
|
@@ -28,4 +40,6 @@ size(T(&)[N]) noexcept
|
|
|
28
40
|
|
|
29
41
|
} /* boost */
|
|
30
42
|
|
|
43
|
+
#endif // (defined(__cpp_lib_nonmember_container_access) ...
|
|
44
|
+
|
|
31
45
|
#endif
|
|
@@ -8,6 +8,7 @@ Distributed under the Boost Software License, Version 1.0.
|
|
|
8
8
|
#ifndef BOOST_CORE_SPAN_HPP
|
|
9
9
|
#define BOOST_CORE_SPAN_HPP
|
|
10
10
|
|
|
11
|
+
#include <boost/core/detail/assert.hpp>
|
|
11
12
|
#include <boost/core/data.hpp>
|
|
12
13
|
#include <array>
|
|
13
14
|
#include <iterator>
|
|
@@ -22,9 +23,15 @@ class span;
|
|
|
22
23
|
|
|
23
24
|
namespace detail {
|
|
24
25
|
|
|
25
|
-
template<class U, class T>
|
|
26
|
+
template<class U, class T, class = void>
|
|
26
27
|
struct span_convertible {
|
|
27
|
-
static constexpr bool value =
|
|
28
|
+
static constexpr bool value = false;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
template<class U, class T>
|
|
32
|
+
struct span_convertible<U, T, typename
|
|
33
|
+
std::enable_if<std::is_convertible<U(*)[], T(*)[]>::value>::type> {
|
|
34
|
+
static constexpr bool value = true;
|
|
28
35
|
};
|
|
29
36
|
|
|
30
37
|
template<std::size_t E, std::size_t N>
|
|
@@ -274,17 +281,21 @@ public:
|
|
|
274
281
|
}
|
|
275
282
|
|
|
276
283
|
constexpr span<T, dynamic_extent> first(size_type c) const {
|
|
277
|
-
return
|
|
284
|
+
return BOOST_CORE_DETAIL_ASSERT(c <= size()),
|
|
285
|
+
span<T, dynamic_extent>(s_.p, c);
|
|
278
286
|
}
|
|
279
287
|
|
|
280
288
|
constexpr span<T, dynamic_extent> last(size_type c) const {
|
|
281
|
-
return
|
|
289
|
+
return BOOST_CORE_DETAIL_ASSERT(c <= size()),
|
|
290
|
+
span<T, dynamic_extent>(s_.p + (s_.n - c), c);
|
|
282
291
|
}
|
|
283
292
|
|
|
284
293
|
constexpr span<T, dynamic_extent> subspan(size_type o,
|
|
285
294
|
size_type c = dynamic_extent) const {
|
|
286
|
-
return
|
|
287
|
-
|
|
295
|
+
return BOOST_CORE_DETAIL_ASSERT(o <= size() &&
|
|
296
|
+
(c == dynamic_extent || c + o <= size())),
|
|
297
|
+
span<T, dynamic_extent>(s_.p + o,
|
|
298
|
+
c == dynamic_extent ? s_.n - o : c);
|
|
288
299
|
}
|
|
289
300
|
|
|
290
301
|
constexpr size_type size() const noexcept {
|
|
@@ -300,15 +311,15 @@ public:
|
|
|
300
311
|
}
|
|
301
312
|
|
|
302
313
|
constexpr reference operator[](size_type i) const {
|
|
303
|
-
return s_.p[i];
|
|
314
|
+
return BOOST_CORE_DETAIL_ASSERT(i < size()), s_.p[i];
|
|
304
315
|
}
|
|
305
316
|
|
|
306
317
|
constexpr reference front() const {
|
|
307
|
-
return *s_.p;
|
|
318
|
+
return BOOST_CORE_DETAIL_ASSERT(!empty()), *s_.p;
|
|
308
319
|
}
|
|
309
320
|
|
|
310
321
|
constexpr reference back() const {
|
|
311
|
-
return s_.p[s_.n - 1];
|
|
322
|
+
return BOOST_CORE_DETAIL_ASSERT(!empty()), s_.p[s_.n - 1];
|
|
312
323
|
}
|
|
313
324
|
|
|
314
325
|
constexpr pointer data() const noexcept {
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
* FILE cregex.cpp
|
|
15
15
|
* VERSION see <boost/version.hpp>
|
|
16
16
|
* DESCRIPTION: Declares POSIX API functions
|
|
17
|
-
* + boost::RegEx high level wrapper.
|
|
18
17
|
*/
|
|
19
18
|
|
|
20
19
|
#ifndef BOOST_RE_CREGEX_HPP
|
|
@@ -24,11 +23,7 @@
|
|
|
24
23
|
#include <boost/regex/config.hpp>
|
|
25
24
|
#endif
|
|
26
25
|
|
|
27
|
-
#ifdef BOOST_REGEX_CXX03
|
|
28
|
-
#include <boost/regex/v4/cregex.hpp>
|
|
29
|
-
#else
|
|
30
26
|
#include <boost/regex/v5/cregex.hpp>
|
|
31
|
-
#endif
|
|
32
27
|
|
|
33
28
|
#endif /* include guard */
|
|
34
29
|
|
|
@@ -37,4 +37,12 @@
|
|
|
37
37
|
# define BOOST_DESCRIBE_MAYBE_UNUSED
|
|
38
38
|
#endif
|
|
39
39
|
|
|
40
|
+
#if defined(__cpp_inline_variables) && __cpp_inline_variables >= 201606L
|
|
41
|
+
# define BOOST_DESCRIBE_INLINE_VARIABLE inline
|
|
42
|
+
#else
|
|
43
|
+
# define BOOST_DESCRIBE_INLINE_VARIABLE
|
|
44
|
+
#endif
|
|
45
|
+
|
|
46
|
+
#define BOOST_DESCRIBE_INLINE_CONSTEXPR BOOST_DESCRIBE_INLINE_VARIABLE BOOST_DESCRIBE_CONSTEXPR_OR_CONST
|
|
47
|
+
|
|
40
48
|
#endif // #ifndef BOOST_DESCRIBE_DETAIL_CONFIG_HPP_INCLUDED
|