passenger 6.2.1 → 6.2.2
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 +37 -15
- data/build/cxx_tests.rb +2 -0
- data/build/support/cxx_dependency_map.rb +3 -63
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Shared/ApiServerUtils.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/apache2_module/Hooks.cpp +13 -0
- data/src/apache2_module/Utils.h +14 -0
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/FileTools/FileManip.cpp +27 -3
- data/src/cxx_supportlib/InstanceDirectory.h +30 -3
- data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
- data/src/cxx_supportlib/ServerKit/llerrors.h +3 -3
- data/src/cxx_supportlib/ServerKit/llversion.h +1 -1
- data/src/cxx_supportlib/{ServerKit/llhttp_api.c → vendor-copy/llhttp/api.c} +30 -23
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.c +1756 -1645
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.h +35 -13
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/classification.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim_all.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/debug.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +57 -53
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +34 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +176 -2287
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +186 -70
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/aligned_allocation.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/bit_utilities.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +20 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/deque_impl.hpp +2744 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +202 -104
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +161 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_constructible.hpp +180 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +18 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +256 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +75 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +1 -56
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +16 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/range_utils.hpp +196 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +124 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +109 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +168 -162
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/nest.hpp +2978 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/pmr/nest.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_all_of.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_any_of.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_if.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_n.hpp +308 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count_if.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_equal.hpp +268 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill_n.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_for_each.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate_n.hpp +162 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_partitioned.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted_until.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_iterator_traits.hpp +382 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_merge.hpp +428 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_mismatch.hpp +350 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_none_of.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_copy.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_point.hpp +116 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy.hpp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy_if.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_if.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace_if.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse.hpp +245 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search.hpp +211 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search_n.hpp +476 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_difference.hpp +300 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_intersection.hpp +287 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_symmetric_difference.hpp +306 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_union.hpp +294 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_stable_partition.hpp +153 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_swap_ranges.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_transform.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/wrapped_iterator.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +642 -417
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +141 -30
- data/src/cxx_supportlib/vendor-modified/boost/container/hub.hpp +2426 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +65 -57
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +247 -68
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +39 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +156 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/hub.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/segtor.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/segtor.hpp +905 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +148 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +59 -52
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +632 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +66 -60
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +46 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +612 -317
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +54 -111
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_construction.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +233 -116
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +17 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/encoder.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +211 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +29 -174
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +18 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +20 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +42 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +58 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/config.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +15 -7
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +23 -11
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +11 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/{detail → lexical_cast/detail}/lcast_precision.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +15 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +48 -46
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/traits.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +58 -37
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_copy_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +17 -9
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_remove_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_common_defs.hpp +188 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_nonmember_interface.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +108 -83
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +39 -39
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_select_implementation.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/union_optional.hpp +724 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +93 -220
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/binomial_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_int_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/system/api_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +30 -28
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +196 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +191 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map.hpp +196 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set.hpp +192 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +52 -16
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/ranges_support.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unordered_printers.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +338 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +333 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json-forwards.h +276 -143
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json.h +1262 -771
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +1704 -1586
- data/src/nginx_module/ContentHandler.c +35 -0
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +25 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +12 -1
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- metadata +73 -8
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp +0 -41
- /data/src/cxx_supportlib/{ServerKit/llhttp_http.c → vendor-copy/llhttp/http.c} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,13 +18,20 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_DETAIL_IS_CHARACTER_HPP
|
|
19
19
|
#define BOOST_LEXICAL_CAST_DETAIL_IS_CHARACTER_HPP
|
|
20
20
|
|
|
21
|
-
#include <
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
22
24
|
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
23
26
|
#include <boost/config.hpp>
|
|
24
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
25
28
|
# pragma once
|
|
26
29
|
#endif
|
|
27
30
|
|
|
31
|
+
#include <type_traits>
|
|
32
|
+
|
|
33
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
34
|
+
|
|
28
35
|
namespace boost { namespace detail {
|
|
29
36
|
|
|
30
37
|
// returns true, if T is one of the character types
|
|
@@ -47,5 +54,7 @@ using is_character = std::integral_constant<
|
|
|
47
54
|
|
|
48
55
|
}}
|
|
49
56
|
|
|
57
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
58
|
+
|
|
50
59
|
#endif // BOOST_LEXICAL_CAST_DETAIL_IS_CHARACTER_HPP
|
|
51
60
|
|
data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -9,6 +9,12 @@
|
|
|
9
9
|
#ifndef BOOST_LEXICAL_CAST_DETAIL_CONVERTER_LEXICAL_BASIC_UNLOCKEDBUF_HPP
|
|
10
10
|
#define BOOST_LEXICAL_CAST_DETAIL_CONVERTER_LEXICAL_BASIC_UNLOCKEDBUF_HPP
|
|
11
11
|
|
|
12
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
13
|
+
|
|
14
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
15
|
+
|
|
16
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
17
|
+
|
|
12
18
|
#include <boost/config.hpp>
|
|
13
19
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
14
20
|
# pragma once
|
|
@@ -25,6 +31,7 @@
|
|
|
25
31
|
#ifndef BOOST_NO_CWCHAR
|
|
26
32
|
# include <cwchar>
|
|
27
33
|
#endif
|
|
34
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
28
35
|
|
|
29
36
|
namespace boost { namespace detail { namespace lcast {
|
|
30
37
|
|
|
@@ -69,5 +76,7 @@ namespace boost { namespace detail { namespace lcast {
|
|
|
69
76
|
|
|
70
77
|
}}} // namespace boost::detail::lcast
|
|
71
78
|
|
|
79
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
80
|
+
|
|
72
81
|
#endif // BOOST_LEXICAL_CAST_DETAIL_CONVERTER_LEXICAL_BASIC_UNLOCKEDBUF_HPP
|
|
73
82
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,10 +18,16 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_DETAIL_LCAST_CHAR_CONSTANTS_HPP
|
|
19
19
|
#define BOOST_LEXICAL_CAST_DETAIL_LCAST_CHAR_CONSTANTS_HPP
|
|
20
20
|
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
24
|
+
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
21
26
|
#include <boost/config.hpp>
|
|
22
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
23
28
|
# pragma once
|
|
24
29
|
#endif
|
|
30
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
25
31
|
|
|
26
32
|
namespace boost
|
|
27
33
|
{
|
|
@@ -41,6 +47,7 @@ namespace boost
|
|
|
41
47
|
}
|
|
42
48
|
} // namespace boost
|
|
43
49
|
|
|
50
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
44
51
|
|
|
45
52
|
#endif // BOOST_LEXICAL_CAST_DETAIL_LCAST_CHAR_CONSTANTS_HPP
|
|
46
53
|
|
data/src/cxx_supportlib/vendor-modified/boost/{detail → lexical_cast/detail}/lcast_precision.hpp
RENAMED
|
@@ -8,11 +8,21 @@
|
|
|
8
8
|
#ifndef BOOST_DETAIL_LCAST_PRECISION_HPP_INCLUDED
|
|
9
9
|
#define BOOST_DETAIL_LCAST_PRECISION_HPP_INCLUDED
|
|
10
10
|
|
|
11
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
12
|
+
|
|
13
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
14
|
+
|
|
15
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
16
|
+
#include <boost/config.hpp>
|
|
17
|
+
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
18
|
+
# pragma once
|
|
19
|
+
#endif
|
|
20
|
+
|
|
11
21
|
#include <climits>
|
|
12
22
|
#include <ios>
|
|
13
23
|
#include <limits>
|
|
14
24
|
|
|
15
|
-
#
|
|
25
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
16
26
|
|
|
17
27
|
namespace boost { namespace detail {
|
|
18
28
|
|
|
@@ -79,5 +89,7 @@ inline void lcast_set_precision(std::ios_base& stream, Source*, Target*)
|
|
|
79
89
|
|
|
80
90
|
}}
|
|
81
91
|
|
|
92
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
93
|
+
|
|
82
94
|
#endif // BOOST_DETAIL_LCAST_PRECISION_HPP_INCLUDED
|
|
83
95
|
|
data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,6 +18,11 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_DETAIL_LCAST_UNSIGNED_CONVERTERS_HPP
|
|
19
19
|
#define BOOST_LEXICAL_CAST_DETAIL_LCAST_UNSIGNED_CONVERTERS_HPP
|
|
20
20
|
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
24
|
+
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
21
26
|
#include <boost/config.hpp>
|
|
22
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
23
28
|
# pragma once
|
|
@@ -49,6 +54,9 @@
|
|
|
49
54
|
|
|
50
55
|
#include <boost/lexical_cast/detail/lcast_char_constants.hpp>
|
|
51
56
|
#include <boost/core/noncopyable.hpp>
|
|
57
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
58
|
+
|
|
59
|
+
#include <boost/lexical_cast/detail/lcast_char_constants.hpp>
|
|
52
60
|
|
|
53
61
|
namespace boost
|
|
54
62
|
{
|
|
@@ -294,5 +302,7 @@ namespace boost
|
|
|
294
302
|
}
|
|
295
303
|
} // namespace boost
|
|
296
304
|
|
|
305
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
306
|
+
|
|
297
307
|
#endif // BOOST_LEXICAL_CAST_DETAIL_LCAST_UNSIGNED_CONVERTERS_HPP
|
|
298
308
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,13 +18,19 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_DETAIL_WIDEST_CHAR_HPP
|
|
19
19
|
#define BOOST_LEXICAL_CAST_DETAIL_WIDEST_CHAR_HPP
|
|
20
20
|
|
|
21
|
-
#include <
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
22
24
|
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
23
26
|
#include <boost/config.hpp>
|
|
24
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
25
28
|
# pragma once
|
|
26
29
|
#endif
|
|
27
30
|
|
|
31
|
+
#include <type_traits>
|
|
32
|
+
|
|
33
|
+
#endif // #ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
28
34
|
|
|
29
35
|
namespace boost { namespace detail {
|
|
30
36
|
|
|
@@ -37,5 +43,7 @@ using widest_char = std::conditional<
|
|
|
37
43
|
|
|
38
44
|
}} // namespace boost::detail
|
|
39
45
|
|
|
46
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
47
|
+
|
|
40
48
|
#endif // BOOST_LEXICAL_CAST_DETAIL_WIDEST_CHAR_HPP
|
|
41
49
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,13 +18,19 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_TRY_LEXICAL_CONVERT_HPP
|
|
19
19
|
#define BOOST_LEXICAL_CAST_TRY_LEXICAL_CONVERT_HPP
|
|
20
20
|
|
|
21
|
-
#include <
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
22
24
|
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
23
26
|
#include <boost/config.hpp>
|
|
24
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
25
28
|
# pragma once
|
|
26
29
|
#endif
|
|
27
30
|
|
|
31
|
+
#include <type_traits>
|
|
32
|
+
#endif
|
|
33
|
+
|
|
28
34
|
#include <boost/lexical_cast/detail/buffer_view.hpp>
|
|
29
35
|
#include <boost/lexical_cast/detail/is_character.hpp>
|
|
30
36
|
#include <boost/lexical_cast/detail/converter_numeric.hpp>
|
|
@@ -45,6 +51,8 @@ namespace boost {
|
|
|
45
51
|
|
|
46
52
|
namespace conversion { namespace detail {
|
|
47
53
|
|
|
54
|
+
BOOST_LEXICAL_CAST_BEGIN_MODULE_EXPORT
|
|
55
|
+
|
|
48
56
|
template <typename Target, typename Source>
|
|
49
57
|
inline bool try_lexical_convert(const Source& arg, Target& result)
|
|
50
58
|
{
|
|
@@ -78,15 +86,20 @@ namespace boost {
|
|
|
78
86
|
result
|
|
79
87
|
);
|
|
80
88
|
}
|
|
89
|
+
BOOST_LEXICAL_CAST_END_MODULE_EXPORT
|
|
81
90
|
|
|
82
91
|
}} // namespace conversion::detail
|
|
83
92
|
|
|
84
93
|
namespace conversion {
|
|
94
|
+
BOOST_LEXICAL_CAST_BEGIN_MODULE_EXPORT
|
|
85
95
|
// ADL barrier
|
|
86
96
|
using ::boost::conversion::detail::try_lexical_convert;
|
|
97
|
+
BOOST_LEXICAL_CAST_END_MODULE_EXPORT
|
|
87
98
|
}
|
|
88
99
|
|
|
89
100
|
} // namespace boost
|
|
90
101
|
|
|
102
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
103
|
+
|
|
91
104
|
#endif // BOOST_LEXICAL_CAST_TRY_LEXICAL_CONVERT_HPP
|
|
92
105
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Kevlin Henney, 2000-2005.
|
|
2
2
|
// Copyright Alexander Nasonov, 2006-2010.
|
|
3
|
-
// Copyright Antony Polukhin, 2011-
|
|
3
|
+
// Copyright Antony Polukhin, 2011-2026.
|
|
4
4
|
//
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See
|
|
6
6
|
// accompanying file LICENSE_1_0.txt or copy at
|
|
@@ -18,10 +18,16 @@
|
|
|
18
18
|
#ifndef BOOST_LEXICAL_CAST_INCLUDED
|
|
19
19
|
#define BOOST_LEXICAL_CAST_INCLUDED
|
|
20
20
|
|
|
21
|
+
#include <boost/lexical_cast/detail/config.hpp>
|
|
22
|
+
|
|
23
|
+
#if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
24
|
+
|
|
25
|
+
#ifndef BOOST_LEXICAL_CAST_INTERFACE_UNIT
|
|
21
26
|
#include <boost/config.hpp>
|
|
22
27
|
#ifdef BOOST_HAS_PRAGMA_ONCE
|
|
23
28
|
# pragma once
|
|
24
29
|
#endif
|
|
30
|
+
#endif
|
|
25
31
|
|
|
26
32
|
#if defined(BOOST_NO_STRINGSTREAM) || defined(BOOST_NO_STD_WSTRING)
|
|
27
33
|
#define BOOST_LCAST_NO_WCHAR_T
|
|
@@ -34,6 +40,7 @@
|
|
|
34
40
|
|
|
35
41
|
namespace boost
|
|
36
42
|
{
|
|
43
|
+
BOOST_LEXICAL_CAST_BEGIN_MODULE_EXPORT
|
|
37
44
|
template <typename Target, typename Source>
|
|
38
45
|
inline Target lexical_cast(const Source &arg)
|
|
39
46
|
{
|
|
@@ -94,9 +101,12 @@ namespace boost
|
|
|
94
101
|
);
|
|
95
102
|
}
|
|
96
103
|
|
|
104
|
+
BOOST_LEXICAL_CAST_END_MODULE_EXPORT
|
|
97
105
|
} // namespace boost
|
|
98
106
|
|
|
99
107
|
#undef BOOST_LCAST_NO_WCHAR_T
|
|
100
108
|
|
|
109
|
+
#endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_LEXICAL_CAST_INTERFACE_UNIT)
|
|
110
|
+
|
|
101
111
|
#endif // BOOST_LEXICAL_CAST_INCLUDED
|
|
102
112
|
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
#include <boost/thread/pthread/pthread_mutex_scoped_lock.hpp>
|
|
12
12
|
#include <boost/assert.hpp>
|
|
13
13
|
#include <boost/static_assert.hpp>
|
|
14
|
-
#include <boost/atomic.hpp>
|
|
15
14
|
#include <boost/memory_order.hpp>
|
|
15
|
+
#include <boost/atomic/atomic.hpp>
|
|
16
16
|
#include <pthread.h>
|
|
17
17
|
|
|
18
18
|
namespace boost
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
#include <boost/thread/pthread/pthread_mutex_scoped_lock.hpp>
|
|
22
22
|
#include <boost/thread/detail/string_trim.hpp>
|
|
23
23
|
#include <boost/thread/detail/string_to_unsigned.hpp>
|
|
24
|
+
#include <boost/core/no_exceptions_support.hpp>
|
|
24
25
|
|
|
25
26
|
#ifdef __GLIBC__
|
|
26
27
|
#include <sys/sysinfo.h>
|
|
@@ -185,7 +186,7 @@ namespace boost
|
|
|
185
186
|
// Unhandled exceptions still cause the application to terminate
|
|
186
187
|
// BOOST_CATCH(...)
|
|
187
188
|
// {
|
|
188
|
-
//
|
|
189
|
+
// throw;
|
|
189
190
|
//
|
|
190
191
|
// std::terminate();
|
|
191
192
|
// }
|
|
@@ -212,12 +213,13 @@ namespace boost
|
|
|
212
213
|
interrupt_enabled=false;
|
|
213
214
|
#endif
|
|
214
215
|
}
|
|
215
|
-
~externally_launched_thread()
|
|
216
|
-
|
|
217
|
-
|
|
216
|
+
~externally_launched_thread()
|
|
217
|
+
{
|
|
218
|
+
BOOST_ASSERT(notify.empty());
|
|
219
|
+
notify.clear();
|
|
218
220
|
//#ifndef BOOST_NO_EXCEPTIONS
|
|
219
|
-
|
|
220
|
-
|
|
221
|
+
BOOST_ASSERT(async_states_.empty());
|
|
222
|
+
async_states_.clear();
|
|
221
223
|
//#endif
|
|
222
224
|
}
|
|
223
225
|
void run()
|
|
@@ -354,7 +356,7 @@ namespace boost
|
|
|
354
356
|
}
|
|
355
357
|
else
|
|
356
358
|
{
|
|
357
|
-
|
|
359
|
+
return false;
|
|
358
360
|
}
|
|
359
361
|
}
|
|
360
362
|
|
|
@@ -373,8 +375,8 @@ namespace boost
|
|
|
373
375
|
}
|
|
374
376
|
if(!local_thread_info->done)
|
|
375
377
|
{
|
|
376
|
-
|
|
377
|
-
|
|
378
|
+
res=false;
|
|
379
|
+
return true;
|
|
378
380
|
}
|
|
379
381
|
do_join=!local_thread_info->join_started;
|
|
380
382
|
|
|
@@ -437,31 +439,31 @@ namespace boost
|
|
|
437
439
|
|
|
438
440
|
namespace this_thread
|
|
439
441
|
{
|
|
440
|
-
|
|
441
|
-
{
|
|
442
|
-
namespace hidden
|
|
442
|
+
namespace no_interruption_point
|
|
443
443
|
{
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
444
|
+
namespace hidden
|
|
445
|
+
{
|
|
446
|
+
void BOOST_THREAD_DECL sleep_for_internal(const detail::platform_duration& ts)
|
|
447
447
|
{
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
448
|
+
if (ts > detail::platform_duration::zero())
|
|
449
|
+
{
|
|
450
|
+
// Use pthread_delay_np or nanosleep whenever possible here in the no_interruption_point
|
|
451
|
+
// namespace because they do not provide an interruption point.
|
|
452
|
+
# if defined(BOOST_HAS_PTHREAD_DELAY_NP)
|
|
453
|
+
# if defined(__IBMCPP__) || defined(_AIX)
|
|
454
|
+
BOOST_VERIFY(!pthread_delay_np(const_cast<timespec*>(&ts.getTs())));
|
|
455
|
+
# else
|
|
456
|
+
BOOST_VERIFY(!pthread_delay_np(&ts.getTs()));
|
|
457
|
+
# endif
|
|
458
|
+
# elif defined(BOOST_HAS_NANOSLEEP)
|
|
459
|
+
nanosleep(&ts.getTs(), 0);
|
|
460
|
+
# else
|
|
461
|
+
// This should never be reached due to BOOST_THREAD_SLEEP_FOR_IS_STEADY
|
|
462
|
+
# endif
|
|
463
|
+
}
|
|
461
464
|
}
|
|
462
|
-
|
|
465
|
+
}
|
|
463
466
|
}
|
|
464
|
-
}
|
|
465
467
|
|
|
466
468
|
void yield() BOOST_NOEXCEPT
|
|
467
469
|
{
|
|
@@ -515,7 +517,7 @@ namespace boost
|
|
|
515
517
|
unsigned thread::physical_concurrency() BOOST_NOEXCEPT
|
|
516
518
|
{
|
|
517
519
|
#ifdef __linux__
|
|
518
|
-
|
|
520
|
+
BOOST_TRY {
|
|
519
521
|
using namespace std;
|
|
520
522
|
|
|
521
523
|
ifstream proc_cpuinfo ("/proc/cpuinfo");
|
|
@@ -570,9 +572,10 @@ namespace boost
|
|
|
570
572
|
// Fall back to hardware_concurrency() in case
|
|
571
573
|
// /proc/cpuinfo is formatted differently than we expect.
|
|
572
574
|
return cores.size() != 0 ? cores.size() : hardware_concurrency();
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
+
} BOOST_CATCH(...) {
|
|
576
|
+
return hardware_concurrency();
|
|
575
577
|
}
|
|
578
|
+
BOOST_CATCH_END
|
|
576
579
|
#elif defined(__APPLE__)
|
|
577
580
|
int count;
|
|
578
581
|
size_t size=sizeof(count);
|
|
@@ -786,26 +789,25 @@ namespace boost
|
|
|
786
789
|
|
|
787
790
|
BOOST_THREAD_DECL void notify_all_at_thread_exit(condition_variable& cond, unique_lock<mutex> lk)
|
|
788
791
|
{
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
792
|
+
detail::thread_data_base* const current_thread_data(detail::get_current_thread_data());
|
|
793
|
+
if(current_thread_data)
|
|
794
|
+
{
|
|
795
|
+
current_thread_data->notify_all_at_thread_exit(&cond, lk.release());
|
|
796
|
+
}
|
|
794
797
|
}
|
|
795
798
|
|
|
796
799
|
//#ifndef BOOST_NO_EXCEPTIONS
|
|
797
|
-
namespace detail
|
|
798
|
-
|
|
800
|
+
namespace detail
|
|
801
|
+
{
|
|
799
802
|
void BOOST_THREAD_DECL make_ready_at_thread_exit(shared_ptr<shared_state_base> as)
|
|
800
803
|
{
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
804
|
+
detail::thread_data_base* const current_thread_data(detail::get_current_thread_data());
|
|
805
|
+
if(current_thread_data)
|
|
806
|
+
{
|
|
807
|
+
current_thread_data->make_ready_at_thread_exit(as);
|
|
808
|
+
}
|
|
806
809
|
}
|
|
807
810
|
}
|
|
808
811
|
//#endif
|
|
809
812
|
|
|
810
|
-
|
|
811
813
|
}
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
# pragma once
|
|
19
19
|
#endif
|
|
20
20
|
|
|
21
|
+
#include <cstddef>
|
|
21
22
|
#include <boost/move/detail/workaround.hpp> //forceinline
|
|
22
23
|
#include <boost/move/detail/meta_utils_core.hpp>
|
|
23
24
|
#include <boost/move/detail/addressof.hpp>
|
|
@@ -208,8 +209,26 @@ struct identity
|
|
|
208
209
|
{
|
|
209
210
|
typedef T type;
|
|
210
211
|
typedef typename add_const_lvalue_reference<T>::type reference;
|
|
212
|
+
|
|
211
213
|
BOOST_MOVE_FORCEINLINE reference operator()(reference t) const
|
|
212
214
|
{ return t; }
|
|
215
|
+
|
|
216
|
+
//For transparent types
|
|
217
|
+
template<class K>
|
|
218
|
+
BOOST_MOVE_FORCEINLINE const K & operator()(const K &t) const
|
|
219
|
+
{ return t; }
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
//////////////////////////////////////
|
|
223
|
+
// identity
|
|
224
|
+
//////////////////////////////////////
|
|
225
|
+
template <>
|
|
226
|
+
struct identity<void>
|
|
227
|
+
{
|
|
228
|
+
template <class U>
|
|
229
|
+
BOOST_MOVE_FORCEINLINE typename add_const_lvalue_reference<U>::type
|
|
230
|
+
operator()(typename add_const_lvalue_reference<U>::type t) const
|
|
231
|
+
{ return t; }
|
|
213
232
|
};
|
|
214
233
|
|
|
215
234
|
//////////////////////////////////////
|
|
@@ -509,6 +528,10 @@ template< class T >
|
|
|
509
528
|
struct add_rvalue_reference<T &>
|
|
510
529
|
{ typedef T & type; };
|
|
511
530
|
|
|
531
|
+
template< class T, std::size_t N >
|
|
532
|
+
struct add_rvalue_reference<T[N]>
|
|
533
|
+
{ typedef T (&type)[N]; };
|
|
534
|
+
|
|
512
535
|
#endif // #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
513
536
|
|
|
514
537
|
template< class T > struct remove_rvalue_reference { typedef T type; };
|