passenger 6.0.16 → 6.0.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (286) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +22 -1
  3. data/build/integration_tests.rb +6 -6
  4. data/build/ruby_tests.rb +1 -1
  5. data/build/test_basics.rb +0 -1
  6. data/src/agent/Core/Config.h +1 -1
  7. data/src/agent/Core/Controller/Config.h +1 -1
  8. data/src/agent/Core/SpawningKit/PipeWatcher.h +18 -3
  9. data/src/agent/Watchdog/Config.h +1 -1
  10. data/src/cxx_supportlib/Constants.h +1 -1
  11. data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +1 -1
  12. data/src/cxx_supportlib/vendor-modified/boost/array.hpp +1 -1
  13. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +344 -0
  14. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +686 -0
  15. data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +56 -0
  16. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +81 -25
  17. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +68 -8
  18. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +46 -11
  19. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +4 -4
  20. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +2 -2
  21. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +1 -1
  22. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +2 -2
  23. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +4 -4
  24. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +2 -2
  25. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +2 -2
  26. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +3 -3
  27. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +2 -2
  28. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +3 -3
  29. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +4 -4
  30. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +2 -2
  31. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +2 -2
  32. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +2 -2
  33. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +2 -2
  34. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +13 -3
  35. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +14 -3
  36. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +13 -3
  37. data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +30 -305
  38. data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +90 -0
  39. data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +17 -18
  40. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +98 -24
  41. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +330 -0
  42. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +81 -15
  43. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +4 -4
  44. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +19 -11
  45. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +37 -0
  46. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +3 -1
  47. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +1 -1
  48. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +10 -2
  49. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +14 -1
  50. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +18 -0
  51. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +1 -2
  52. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +7 -3
  53. data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +4 -14
  54. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +22 -3
  55. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +447 -142
  56. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +57 -8
  57. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +51 -6
  58. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +5 -0
  59. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +41 -4
  60. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +5 -0
  61. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +13 -2
  62. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +13 -2
  63. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +4 -0
  64. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +9 -2
  65. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +11 -1
  66. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +52 -8
  67. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +13 -2
  68. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +5 -0
  69. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +39 -6
  70. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +5 -0
  71. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +39 -6
  72. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +5 -0
  73. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +5 -0
  74. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +5 -0
  75. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +5 -0
  76. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +5 -0
  77. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +5 -0
  78. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +5 -0
  79. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +5 -0
  80. data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +6 -9
  81. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +3 -3
  82. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +3 -3
  83. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +70 -0
  84. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +146 -0
  85. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +35 -5
  86. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +13 -3
  87. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +7 -0
  88. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +180 -0
  89. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +171 -0
  90. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +89 -66
  91. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +66 -45
  92. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +13 -3
  93. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +1134 -0
  94. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +130 -106
  95. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +377 -3
  96. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +168 -29
  97. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +149 -203
  98. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +68 -0
  99. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +256 -0
  100. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +76 -80
  101. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +40 -14
  102. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +113 -0
  103. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +132 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +12 -0
  105. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +12 -3
  106. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +12 -3
  107. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +25 -6
  108. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +25 -6
  109. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +34 -45
  110. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +28 -6
  111. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +204 -0
  112. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +33 -1
  113. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +13 -3
  114. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +21 -9
  115. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +1 -1
  116. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +33 -1
  117. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +12 -3
  118. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +40 -9
  119. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +27 -6
  120. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +104 -24
  121. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +12 -3
  122. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +70 -15
  123. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -0
  124. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +25 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +38 -30
  126. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +27 -6
  127. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +0 -13
  128. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -1
  129. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -1
  130. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +2 -2
  131. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +2 -2
  132. data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +17 -18
  133. data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +3 -1
  134. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +13 -3
  135. data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +11 -7
  136. data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +0 -13
  137. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +23 -18
  138. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  139. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +2 -2
  140. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +1 -1
  141. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +2 -2
  142. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +2 -2
  143. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +4 -0
  144. data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +1 -1
  145. data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +1 -0
  146. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +4 -4
  147. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/scan_keyword.hpp +4 -2
  148. data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +2 -2
  149. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_io.hpp +3 -3
  150. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_put.hpp +5 -5
  151. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +2 -2
  152. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +2 -2
  153. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/utility/ios_base_state_ptr.hpp +7 -7
  154. data/src/cxx_supportlib/vendor-modified/boost/chrono/time_point.hpp +1 -1
  155. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +5 -1
  156. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +10 -3
  157. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +9 -3
  158. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +9 -3
  159. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +6 -0
  160. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +8 -0
  161. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +33 -0
  163. data/src/cxx_supportlib/vendor-modified/boost/config/header_deprecated.hpp +1 -1
  164. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +9 -0
  165. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +4 -2
  166. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
  167. data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +29 -0
  168. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +13 -13
  169. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +80 -95
  170. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +10 -0
  171. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +3 -0
  172. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +738 -34
  173. data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +38 -10
  174. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +1 -0
  175. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +2 -0
  176. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +3 -4
  177. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +1150 -1213
  178. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +1 -1
  179. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +104 -12
  180. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +1 -0
  181. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +11 -1
  182. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +31 -331
  183. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +113 -0
  184. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +173 -0
  185. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple.hpp +133 -0
  186. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +461 -566
  187. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +24 -24
  188. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +91 -0
  189. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +38 -0
  190. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +73 -0
  191. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +39 -0
  192. data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +32 -4
  193. data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +16 -0
  194. data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +16 -16
  195. data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +46 -0
  196. data/src/cxx_supportlib/vendor-modified/boost/date_time/date.hpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters.hpp +3 -3
  198. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters_limited.hpp +3 -3
  199. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_date.hpp +12 -13
  200. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/parsers.hpp +2 -2
  201. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.ipp +2 -2
  202. data/src/cxx_supportlib/vendor-modified/boost/date_time/iso_format.hpp +13 -13
  203. data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_date_time.hpp +2 -2
  204. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters.hpp +4 -4
  205. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters_limited.hpp +2 -2
  206. data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_parser.hpp +1 -1
  207. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +1 -1
  208. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_parsing.hpp +2 -2
  209. data/src/cxx_supportlib/vendor-modified/boost/describe/bases.hpp +50 -0
  210. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +40 -0
  211. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/cx_streq.hpp +30 -0
  212. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/void_t.hpp +32 -0
  213. data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +159 -0
  214. data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +33 -0
  215. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +9 -9
  216. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +45 -45
  217. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +8 -8
  218. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +37 -38
  219. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +16 -0
  220. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +1 -1
  221. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +145 -90
  222. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +2 -0
  223. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +7 -7
  224. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +5 -5
  225. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +11 -9
  226. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +7 -7
  227. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +106 -25
  228. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +1 -1
  229. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +8 -5
  230. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +1 -1
  231. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +4 -2
  232. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/pdqsort.hpp +2 -1
  233. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +8 -4
  234. data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +111 -0
  235. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  236. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/int_float_mixture.hpp +5 -5
  237. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/sign_mixture.hpp +5 -5
  238. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/udt_builtin_mixture.hpp +5 -5
  239. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +6 -2
  240. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp +11 -2
  241. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +1 -1
  242. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +7 -1
  243. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +2 -2
  244. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +10 -1
  245. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +38 -43
  246. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +52 -0
  247. data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +1 -1
  248. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_helper.hpp +27 -27
  249. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +27 -27
  250. data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +22 -8
  251. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +37 -7
  252. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa.hpp +1921 -0
  253. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +66 -82
  254. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +6 -0
  255. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +109 -0
  256. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/xmx.hpp +75 -0
  257. data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +45 -0
  258. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +732 -0
  259. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +49 -0
  260. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +586 -0
  261. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +49 -0
  262. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +166 -66
  263. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +145 -28
  264. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  265. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/md5.hpp +1 -1
  266. data/src/ruby_native_extension/extconf.rb +1 -1
  267. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +1 -1
  268. data/src/ruby_supportlib/phusion_passenger.rb +5 -5
  269. metadata +36 -19
  270. data/src/cxx_supportlib/vendor-modified/boost/align/align.hpp +0 -19
  271. data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of.hpp +0 -54
  272. data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of_forward.hpp +0 -20
  273. data/src/cxx_supportlib/vendor-modified/boost/align/detail/align_cxx11.hpp +0 -21
  274. data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc.hpp +0 -52
  275. data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of.hpp +0 -31
  276. data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of_cxx11.hpp +0 -23
  277. data/src/cxx_supportlib/vendor-modified/boost/align/detail/element_type.hpp +0 -91
  278. data/src/cxx_supportlib/vendor-modified/boost/align/detail/integral_constant.hpp +0 -53
  279. data/src/cxx_supportlib/vendor-modified/boost/align/detail/min_size.hpp +0 -26
  280. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/completion_handler_erasure.hpp +0 -196
  281. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/compose.hpp +0 -709
  282. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/float_functions.hpp +0 -336
  283. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_float.hpp +0 -271
  284. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/limits.hpp +0 -62
  285. data/src/cxx_supportlib/vendor-modified/boost/container_hash/extensions.hpp +0 -361
  286. data/src/cxx_supportlib/vendor-modified/boost/detail/container_fwd.hpp +0 -157
@@ -502,7 +502,7 @@ private:
502
502
  {
503
503
  }
504
504
 
505
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
505
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
506
506
  {
507
507
  return self_->get_executor();
508
508
  }
@@ -535,7 +535,7 @@ private:
535
535
  {
536
536
  }
537
537
 
538
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
538
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
539
539
  {
540
540
  return self_->get_executor();
541
541
  }
@@ -19,8 +19,10 @@
19
19
  #include <boost/asio/async_result.hpp>
20
20
  #include <boost/asio/detail/type_traits.hpp>
21
21
  #include <boost/asio/execution_context.hpp>
22
+ #include <boost/asio/execution/blocking.hpp>
22
23
  #include <boost/asio/execution/executor.hpp>
23
24
  #include <boost/asio/is_executor.hpp>
25
+ #include <boost/asio/require.hpp>
24
26
 
25
27
  #include <boost/asio/detail/push_options.hpp>
26
28
 
@@ -66,12 +68,11 @@ template <typename> class initiate_post_with_executor;
66
68
  * @code auto alloc = get_associated_allocator(handler); @endcode
67
69
  *
68
70
  * @li If <tt>execution::is_executor<Ex>::value</tt> is true, performs
69
- * @code execution::execute(
70
- * prefer(
71
- * require(ex, execution::blocking.never),
72
- * execution::relationship.fork,
73
- * execution::allocator(alloc)),
74
- * std::forward<CompletionHandler>(completion_handler)); @endcode
71
+ * @code prefer(
72
+ * require(ex, execution::blocking.never),
73
+ * execution::relationship.fork,
74
+ * execution::allocator(alloc)
75
+ * ).execute(std::forward<CompletionHandler>(completion_handler)); @endcode
75
76
  *
76
77
  * @li If <tt>execution::is_executor<Ex>::value</tt> is false, performs
77
78
  * @code ex.post(
@@ -133,11 +134,8 @@ BOOST_ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(NullaryToken, void()) post(
133
134
  * handler_ that is a decay-copy of @c completion_handler, and a function call
134
135
  * operator that performs:
135
136
  * @code auto a = get_associated_allocator(handler_);
136
- * execution::execute(
137
- * prefer(executor_,
138
- * execution::blocking.possibly,
139
- * execution::allocator(a)),
140
- * std::move(handler_)); @endcode
137
+ * prefer(executor_, execution::allocator(a)).execute(std::move(handler_));
138
+ * @endcode
141
139
  *
142
140
  * @li If <tt>execution::is_executor<Ex1>::value</tt> is false, constructs a
143
141
  * function object @c f with a member @c work_ that is initialised with
@@ -148,12 +146,11 @@ BOOST_ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(NullaryToken, void()) post(
148
146
  * work_.reset(); @endcode
149
147
  *
150
148
  * @li If <tt>execution::is_executor<Ex>::value</tt> is true, performs
151
- * @code execution::execute(
152
- * prefer(
153
- * require(ex, execution::blocking.never),
154
- * execution::relationship.fork,
155
- * execution::allocator(alloc)),
156
- * std::move(f)); @endcode
149
+ * @code prefer(
150
+ * require(ex, execution::blocking.never),
151
+ * execution::relationship.fork,
152
+ * execution::allocator(alloc)
153
+ * ).execute(std::move(f)); @endcode
157
154
  *
158
155
  * @li If <tt>execution::is_executor<Ex>::value</tt> is false, performs
159
156
  * @code ex.post(std::move(f), alloc); @endcode
@@ -169,7 +166,9 @@ BOOST_ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(NullaryToken, void()) post(
169
166
  BOOST_ASIO_MOVE_ARG(NullaryToken) token
170
167
  BOOST_ASIO_DEFAULT_COMPLETION_TOKEN(Executor),
171
168
  typename constraint<
172
- execution::is_executor<Executor>::value || is_executor<Executor>::value
169
+ (execution::is_executor<Executor>::value
170
+ && can_require<Executor, execution::blocking_t::never_t>::value)
171
+ || is_executor<Executor>::value
173
172
  >::type = 0)
174
173
  BOOST_ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
175
174
  async_initiate<NullaryToken, void()>(
@@ -43,7 +43,8 @@ public:
43
43
  spawned_thread_base()
44
44
  : owner_(0),
45
45
  has_context_switched_(false),
46
- throw_if_cancelled_(false)
46
+ throw_if_cancelled_(false),
47
+ terminal_(false)
47
48
  {
48
49
  }
49
50
 
@@ -131,6 +132,7 @@ protected:
131
132
  boost::asio::cancellation_state cancellation_state_;
132
133
  bool has_context_switched_;
133
134
  bool throw_if_cancelled_;
135
+ bool terminal_;
134
136
 
135
137
  private:
136
138
  // Disallow copying and assignment.
@@ -411,9 +411,19 @@ struct associator<Associator,
411
411
  DefaultCandidate>
412
412
  : Associator<Handler, DefaultCandidate>
413
413
  {
414
- static typename Associator<Handler, DefaultCandidate>::type get(
415
- const ssl::detail::io_op<Stream, Operation, Handler>& h,
416
- const DefaultCandidate& c = DefaultCandidate()) BOOST_ASIO_NOEXCEPT
414
+ static typename Associator<Handler, DefaultCandidate>::type
415
+ get(const ssl::detail::io_op<Stream, Operation, Handler>& h)
416
+ BOOST_ASIO_NOEXCEPT
417
+ {
418
+ return Associator<Handler, DefaultCandidate>::get(h.handler_);
419
+ }
420
+
421
+ static BOOST_ASIO_AUTO_RETURN_TYPE_PREFIX2(
422
+ typename Associator<Handler, DefaultCandidate>::type)
423
+ get(const ssl::detail::io_op<Stream, Operation, Handler>& h,
424
+ const DefaultCandidate& c) BOOST_ASIO_NOEXCEPT
425
+ BOOST_ASIO_AUTO_RETURN_TYPE_SUFFIX((
426
+ Associator<Handler, DefaultCandidate>::get(h.handler_, c)))
417
427
  {
418
428
  return Associator<Handler, DefaultCandidate>::get(h.handler_, c);
419
429
  }
@@ -263,13 +263,6 @@ public:
263
263
 
264
264
  /// Request the strand to invoke the given function object.
265
265
  /**
266
- * Do not call this function directly. It is intended for use with the
267
- * execution::execute customisation point.
268
- *
269
- * For example:
270
- * @code boost::asio::strand<my_executor_type> ex = ...;
271
- * execution::execute(ex, my_function_object); @endcode
272
- *
273
266
  * This function is used to ask the strand to execute the given function
274
267
  * object on its underlying executor. The function object will be executed
275
268
  * according to the properties of the underlying executor.
@@ -280,7 +273,14 @@ public:
280
273
  */
281
274
  template <typename Function>
282
275
  typename constraint<
276
+ #if defined(BOOST_ASIO_NO_DEPRECATED) \
277
+ || defined(GENERATING_DOCUMENTATION)
278
+ traits::execute_member<const Executor&, Function>::is_valid,
279
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
280
+ // || defined(GENERATING_DOCUMENTATION)
283
281
  execution::can_execute<const Executor&, Function>::value,
282
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
283
+ // || defined(GENERATING_DOCUMENTATION)
284
284
  void
285
285
  >::type execute(BOOST_ASIO_MOVE_ARG(Function) f) const
286
286
  {
@@ -495,7 +495,11 @@ struct equality_comparable<strand<Executor> >
495
495
  template <typename Executor, typename Function>
496
496
  struct execute_member<strand<Executor>, Function,
497
497
  typename enable_if<
498
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
499
+ traits::execute_member<const Executor&, Function>::is_valid
500
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
498
501
  execution::can_execute<const Executor&, Function>::value
502
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
499
503
  >::type>
500
504
  {
501
505
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
@@ -315,20 +315,7 @@ public:
315
315
  return false;
316
316
  }
317
317
 
318
- #if !defined(GENERATING_DOCUMENTATION)
319
- private:
320
- friend struct boost_asio_execution_execute_fn::impl;
321
- #endif // !defined(GENERATING_DOCUMENTATION)
322
-
323
318
  /// Execution function.
324
- /**
325
- * Do not call this function directly. It is intended for use with the
326
- * execution::execute customisation point.
327
- *
328
- * For example:
329
- * @code boost::asio::system_executor ex;
330
- * execution::execute(ex, my_function_object); @endcode
331
- */
332
319
  template <typename Function>
333
320
  void execute(BOOST_ASIO_MOVE_ARG(Function) f) const
334
321
  {
@@ -166,8 +166,10 @@ template <typename Allocator, unsigned int Bits>
166
166
  class thread_pool::basic_executor_type : detail::thread_pool_bits
167
167
  {
168
168
  public:
169
- /// The sender type, when this type is used as a scheduler.
169
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
170
+ /// (Deprecated.) The sender type, when this type is used as a scheduler.
170
171
  typedef basic_executor_type sender_type;
172
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
171
173
 
172
174
  /// The bulk execution shape type.
173
175
  typedef std::size_t shape_type;
@@ -404,7 +406,8 @@ private:
404
406
  friend struct boost::asio::execution::detail::outstanding_work_t<0>;
405
407
  #endif // !defined(GENERATING_DOCUMENTATION)
406
408
 
407
- /// Query the current value of the @c bulk_guarantee property.
409
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
410
+ /// (Deprecated.) Query the current value of the @c bulk_guarantee property.
408
411
  /**
409
412
  * Do not call this function directly. It is intended for use with the
410
413
  * boost::asio::query customisation point.
@@ -420,6 +423,7 @@ private:
420
423
  {
421
424
  return execution::bulk_guarantee.parallel;
422
425
  }
426
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
423
427
 
424
428
  /// Query the current value of the @c mapping property.
425
429
  /**
@@ -592,20 +596,7 @@ public:
592
596
  || a.bits_ != b.bits_;
593
597
  }
594
598
 
595
- #if !defined(GENERATING_DOCUMENTATION)
596
- private:
597
- friend struct boost_asio_execution_execute_fn::impl;
598
- #endif // !defined(GENERATING_DOCUMENTATION)
599
-
600
599
  /// Execution function.
601
- /**
602
- * Do not call this function directly. It is intended for use with the
603
- * execution::execute customisation point.
604
- *
605
- * For example:
606
- * @code auto ex = my_thread_pool.executor();
607
- * execution::execute(ex, my_function_object); @endcode
608
- */
609
600
  template <typename Function>
610
601
  void execute(BOOST_ASIO_MOVE_ARG(Function) f) const
611
602
  {
@@ -614,7 +605,8 @@ private:
614
605
  }
615
606
 
616
607
  public:
617
- /// Bulk execution function.
608
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
609
+ /// (Deprecated.) Bulk execution function.
618
610
  template <typename Function>
619
611
  void bulk_execute(BOOST_ASIO_MOVE_ARG(Function) f, std::size_t n) const
620
612
  {
@@ -622,7 +614,7 @@ public:
622
614
  integral_constant<bool, (Bits & blocking_always) != 0>());
623
615
  }
624
616
 
625
- /// Schedule function.
617
+ /// (Deprecated.) Schedule function.
626
618
  /**
627
619
  * Do not call this function directly. It is intended for use with the
628
620
  * execution::schedule customisation point.
@@ -634,7 +626,7 @@ public:
634
626
  return *this;
635
627
  }
636
628
 
637
- /// Connect function.
629
+ /// (Deprecated.) Connect function.
638
630
  /**
639
631
  * Do not call this function directly. It is intended for use with the
640
632
  * execution::connect customisation point.
@@ -653,6 +645,7 @@ public:
653
645
  return execution::detail::as_operation<basic_executor_type, Receiver>(
654
646
  *this, BOOST_ASIO_MOVE_CAST(Receiver)(r));
655
647
  }
648
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
656
649
 
657
650
  #if !defined(BOOST_ASIO_NO_TS_EXECUTORS)
658
651
  /// Obtain the underlying execution context.
@@ -819,6 +812,8 @@ struct execute_member<
819
812
 
820
813
  #if !defined(BOOST_ASIO_HAS_DEDUCED_SCHEDULE_MEMBER_TRAIT)
821
814
 
815
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
816
+
822
817
  template <typename Allocator, unsigned int Bits>
823
818
  struct schedule_member<
824
819
  const boost::asio::thread_pool::basic_executor_type<Allocator, Bits>
@@ -830,10 +825,14 @@ struct schedule_member<
830
825
  Allocator, Bits> result_type;
831
826
  };
832
827
 
828
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
829
+
833
830
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_SCHEDULE_MEMBER_TRAIT)
834
831
 
835
832
  #if !defined(BOOST_ASIO_HAS_DEDUCED_CONNECT_MEMBER_TRAIT)
836
833
 
834
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
835
+
837
836
  template <typename Allocator, unsigned int Bits, typename Receiver>
838
837
  struct connect_member<
839
838
  const boost::asio::thread_pool::basic_executor_type<Allocator, Bits>,
@@ -847,6 +846,8 @@ struct connect_member<
847
846
  Receiver> result_type;
848
847
  };
849
848
 
849
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
850
+
850
851
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_CONNECT_MEMBER_TRAIT)
851
852
 
852
853
  #if !defined(BOOST_ASIO_HAS_DEDUCED_REQUIRE_MEMBER_TRAIT)
@@ -964,6 +965,8 @@ struct require_member<
964
965
 
965
966
  #if !defined(BOOST_ASIO_HAS_DEDUCED_QUERY_STATIC_CONSTEXPR_MEMBER_TRAIT)
966
967
 
968
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
969
+
967
970
  template <typename Allocator, unsigned int Bits, typename Property>
968
971
  struct query_static_constexpr_member<
969
972
  boost::asio::thread_pool::basic_executor_type<Allocator, Bits>,
@@ -986,6 +989,8 @@ struct query_static_constexpr_member<
986
989
  }
987
990
  };
988
991
 
992
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
993
+
989
994
  template <typename Allocator, unsigned int Bits, typename Property>
990
995
  struct query_static_constexpr_member<
991
996
  boost::asio::thread_pool::basic_executor_type<Allocator, Bits>,
@@ -18,6 +18,6 @@
18
18
  // BOOST_ASIO_VERSION % 100 is the sub-minor version
19
19
  // BOOST_ASIO_VERSION / 100 % 1000 is the minor version
20
20
  // BOOST_ASIO_VERSION / 100000 is the major version
21
- #define BOOST_ASIO_VERSION 102400 // 1.24.0
21
+ #define BOOST_ASIO_VERSION 102600 // 1.26.0
22
22
 
23
23
  #endif // BOOST_ASIO_VERSION_HPP
@@ -238,7 +238,7 @@ public:
238
238
  #endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
239
239
 
240
240
  /// Get the executor associated with the object.
241
- executor_type get_executor() BOOST_ASIO_NOEXCEPT
241
+ const executor_type& get_executor() BOOST_ASIO_NOEXCEPT
242
242
  {
243
243
  return impl_.get_executor();
244
244
  }
@@ -457,7 +457,7 @@ private:
457
457
  {
458
458
  }
459
459
 
460
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
460
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
461
461
  {
462
462
  return self_->get_executor();
463
463
  }
@@ -239,7 +239,7 @@ public:
239
239
  #endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
240
240
 
241
241
  /// Get the executor associated with the object.
242
- executor_type get_executor() BOOST_ASIO_NOEXCEPT
242
+ const executor_type& get_executor() BOOST_ASIO_NOEXCEPT
243
243
  {
244
244
  return impl_.get_executor();
245
245
  }
@@ -512,7 +512,7 @@ private:
512
512
  {
513
513
  }
514
514
 
515
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
515
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
516
516
  {
517
517
  return self_->get_executor();
518
518
  }
@@ -545,7 +545,7 @@ private:
545
545
  {
546
546
  }
547
547
 
548
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
548
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
549
549
  {
550
550
  return self_->get_executor();
551
551
  }
@@ -494,7 +494,7 @@ private:
494
494
  {
495
495
  }
496
496
 
497
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
497
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
498
498
  {
499
499
  return self_->get_executor();
500
500
  }
@@ -527,7 +527,7 @@ private:
527
527
  {
528
528
  }
529
529
 
530
- executor_type get_executor() const BOOST_ASIO_NOEXCEPT
530
+ const executor_type& get_executor() const BOOST_ASIO_NOEXCEPT
531
531
  {
532
532
  return self_->get_executor();
533
533
  }
@@ -17,6 +17,9 @@
17
17
  # pragma once
18
18
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
19
19
 
20
+ #include <boost/asio/any_completion_executor.hpp>
21
+ #include <boost/asio/any_completion_handler.hpp>
22
+ #include <boost/asio/any_io_executor.hpp>
20
23
  #include <boost/asio/append.hpp>
21
24
  #include <boost/asio/as_tuple.hpp>
22
25
  #include <boost/asio/associated_allocator.hpp>
@@ -64,6 +67,7 @@
64
67
  #include <boost/asio/compose.hpp>
65
68
  #include <boost/asio/connect.hpp>
66
69
  #include <boost/asio/connect_pipe.hpp>
70
+ #include <boost/asio/consign.hpp>
67
71
  #include <boost/asio/coroutine.hpp>
68
72
  #include <boost/asio/deadline_timer.hpp>
69
73
  #include <boost/asio/defer.hpp>
@@ -23,7 +23,7 @@
23
23
 
24
24
  #include <boost/config.hpp>
25
25
  #include <boost/ref.hpp>
26
- #include <boost/mem_fn.hpp>
26
+ #include <boost/bind/mem_fn.hpp>
27
27
  #include <boost/type.hpp>
28
28
  #include <boost/is_placeholder.hpp>
29
29
  #include <boost/bind/arg.hpp>
@@ -212,5 +212,6 @@
212
212
  #include <boost/config/auto_link.hpp>
213
213
  #endif // auto-linking disabled
214
214
  #endif // BOOST_CHRONO_HEADER_ONLY
215
+
215
216
  #endif // BOOST_CHRONO_CONFIG_HPP
216
217
 
@@ -30,7 +30,7 @@ system_clock::time_point
30
30
  system_clock::now() BOOST_NOEXCEPT
31
31
  {
32
32
  timeval tv;
33
- gettimeofday(&tv, 0);
33
+ gettimeofday(&tv, BOOST_NULLPTR);
34
34
  return time_point(seconds(tv.tv_sec) + microseconds(tv.tv_usec));
35
35
  }
36
36
 
@@ -39,7 +39,7 @@ system_clock::time_point
39
39
  system_clock::now(system::error_code & ec)
40
40
  {
41
41
  timeval tv;
42
- gettimeofday(&tv, 0);
42
+ gettimeofday(&tv, BOOST_NULLPTR);
43
43
  if (!::boost::chrono::is_throws(ec))
44
44
  {
45
45
  ec.clear();
@@ -166,7 +166,7 @@ init_steady_clock(kern_return_t & err)
166
166
  err = mach_timebase_info(&MachInfo);
167
167
  if ( err != 0 )
168
168
  {
169
- return 0;
169
+ return BOOST_NULLPTR;
170
170
  }
171
171
 
172
172
  if (MachInfo.numer == MachInfo.denom)
@@ -185,7 +185,7 @@ init_steady_clock_ec(kern_return_t & err)
185
185
  err = mach_timebase_info(&MachInfo);
186
186
  if ( err != 0 )
187
187
  {
188
- return 0;
188
+ return BOOST_NULLPTR;
189
189
  }
190
190
 
191
191
  if (MachInfo.numer == MachInfo.denom)
@@ -67,12 +67,14 @@ scan_keyword(InputIterator& b, InputIterator e,
67
67
  unsigned char* status = statbuf;
68
68
  // Change free by free_aux to avoid
69
69
  // Error: Could not find a match for boost::interprocess::unique_ptr<unsigned char, void(*)(void*)>::unique_ptr(int, extern "C" void(void*))
70
- unique_ptr<unsigned char, void(*)(void*)> stat_hold(0, free_aux);
70
+ unique_ptr<unsigned char, void(*)(void*)> stat_hold(BOOST_NULLPTR, free_aux);
71
71
  if (nkw > sizeof(statbuf))
72
72
  {
73
73
  status = (unsigned char*)malloc(nkw);
74
- if (status == 0)
74
+ if (status == BOOST_NULLPTR)
75
+ {
75
76
  throw_exception(std::bad_alloc());
77
+ }
76
78
  stat_hold.reset(status);
77
79
  }
78
80
  size_t n_might_match = nkw; // At this point, any keyword might match
@@ -455,7 +455,7 @@ namespace chrono {
455
455
  >
456
456
  >
457
457
  >
458
- >::type* = 0
458
+ >::type* = BOOST_NULLPTR
459
459
  ) : rep_(r) { }
460
460
  #if defined BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
461
461
  duration& operator=(const duration& rhs)
@@ -481,7 +481,7 @@ namespace chrono {
481
481
  mpl::not_ < treat_as_floating_point<Rep2> >
482
482
  >
483
483
  >
484
- >::type* = 0
484
+ >::type* = BOOST_NULLPTR
485
485
  )
486
486
  : rep_(chrono::detail::duration_cast<duration<Rep2, Period2>, duration>()(d).count()) {}
487
487
 
@@ -166,7 +166,7 @@ namespace boost
166
166
  {
167
167
  os.setstate(std::ios_base::failbit);
168
168
  }
169
- BOOST_CATCH (std::ios_base::failure )
169
+ BOOST_CATCH (const std::ios_base::failure& )
170
170
  {
171
171
  flag = true;
172
172
  }
@@ -221,7 +221,7 @@ namespace boost
221
221
  {
222
222
  os.setstate(std::ios_base::failbit);
223
223
  }
224
- BOOST_CATCH (std::ios_base::failure )
224
+ BOOST_CATCH (const std::ios_base::failure& )
225
225
  {
226
226
  flag = true;
227
227
  }
@@ -276,7 +276,7 @@ namespace boost
276
276
  {
277
277
  is.setstate(std::ios_base::failbit);
278
278
  }
279
- BOOST_CATCH (std::ios_base::failure )
279
+ BOOST_CATCH (const std::ios_base::failure& )
280
280
  {
281
281
  flag = true;
282
282
  }
@@ -102,7 +102,7 @@ namespace boost
102
102
  */
103
103
  template <typename Rep, typename Period>
104
104
  iter_type put(iter_type s, std::ios_base& ios, char_type fill, duration<Rep, Period> const& d, const CharT* pattern,
105
- const CharT* pat_end, const char_type* val = 0) const
105
+ const CharT* pat_end, const char_type* val = BOOST_NULLPTR) const
106
106
  {
107
107
  if (std::has_facet<duration_units<CharT> >(ios.getloc()))
108
108
  {
@@ -119,7 +119,7 @@ namespace boost
119
119
 
120
120
  template <typename Rep, typename Period>
121
121
  iter_type put(duration_units<CharT> const& units_facet, iter_type s, std::ios_base& ios, char_type fill,
122
- duration<Rep, Period> const& d, const CharT* pattern, const CharT* pat_end, const char_type* val = 0) const
122
+ duration<Rep, Period> const& d, const CharT* pattern, const CharT* pat_end, const char_type* val = BOOST_NULLPTR) const
123
123
  {
124
124
 
125
125
  const std::ctype<char_type>& ct = std::use_facet<std::ctype<char_type> >(ios.getloc());
@@ -170,7 +170,7 @@ namespace boost
170
170
  * @Returns An iterator pointing immediately after the last character produced.
171
171
  */
172
172
  template <typename Rep, typename Period>
173
- iter_type put(iter_type s, std::ios_base& ios, char_type fill, duration<Rep, Period> const& d, const char_type* val = 0) const
173
+ iter_type put(iter_type s, std::ios_base& ios, char_type fill, duration<Rep, Period> const& d, const char_type* val = BOOST_NULLPTR) const
174
174
  {
175
175
  if (std::has_facet<duration_units<CharT> >(ios.getloc()))
176
176
  {
@@ -198,7 +198,7 @@ namespace boost
198
198
  * @Returns s, iterator pointing immediately after the last character produced.
199
199
  */
200
200
  template <typename Rep, typename Period>
201
- iter_type put_value(iter_type s, std::ios_base& ios, char_type fill, duration<Rep, Period> const& d, const char_type* val = 0) const
201
+ iter_type put_value(iter_type s, std::ios_base& ios, char_type fill, duration<Rep, Period> const& d, const char_type* val = BOOST_NULLPTR) const
202
202
  {
203
203
  if (val)
204
204
  {
@@ -213,7 +213,7 @@ namespace boost
213
213
  }
214
214
 
215
215
  template <typename Rep, typename Period>
216
- iter_type put_value(iter_type s, std::ios_base& ios, char_type fill, duration<process_times<Rep>, Period> const& d, const char_type* = 0) const
216
+ iter_type put_value(iter_type s, std::ios_base& ios, char_type fill, duration<process_times<Rep>, Period> const& d, const char_type* = BOOST_NULLPTR) const
217
217
  {
218
218
  *s++ = CharT('{');
219
219
  s = put_value(s, ios, fill, process_real_cpu_clock::duration(d.count().real));
@@ -983,9 +983,9 @@ namespace boost
983
983
  if (duration_units_default_holder<CharT>::initialized_)
984
984
  {
985
985
  delete[] duration_units_default_holder<CharT>::n_d_valid_units_;
986
- duration_units_default_holder<CharT>::n_d_valid_units_ = 0;
986
+ duration_units_default_holder<CharT>::n_d_valid_units_ = BOOST_NULLPTR;
987
987
  delete[] duration_units_default_holder<CharT>::valid_units_;
988
- duration_units_default_holder<CharT>::valid_units_ = 0;
988
+ duration_units_default_holder<CharT>::valid_units_ = BOOST_NULLPTR;
989
989
  duration_units_default_holder<CharT>::initialized_ = false;
990
990
  }
991
991
  }
@@ -683,7 +683,7 @@ namespace boost
683
683
  {
684
684
  os.setstate(std::ios_base::failbit);
685
685
  }
686
- BOOST_CATCH (std::ios_base::failure )
686
+ BOOST_CATCH (const std::ios_base::failure& )
687
687
  {
688
688
  flag = true;
689
689
  }
@@ -732,7 +732,7 @@ namespace boost
732
732
  {
733
733
  is.setstate(std::ios_base::failbit);
734
734
  }
735
- BOOST_CATCH (std::ios_base::failure )
735
+ BOOST_CATCH (const std::ios_base::failure& )
736
736
  {
737
737
  flag = true;
738
738
  }
@@ -116,9 +116,9 @@ namespace boost
116
116
  {
117
117
  register_once(index(), ios_);
118
118
  void* &pw = ios_.pword(index());
119
- if (pw == 0)
119
+ if (pw == BOOST_NULLPTR)
120
120
  {
121
- return 0;
121
+ return BOOST_NULLPTR;
122
122
  }
123
123
  return static_cast<T*> (pw);
124
124
  }
@@ -243,18 +243,18 @@ namespace boost
243
243
  case std::ios_base::erase_event:
244
244
  {
245
245
  void*& pw = ios.pword(index);
246
- if (pw != 0)
246
+ if (pw != BOOST_NULLPTR)
247
247
  {
248
248
  T* ptr = static_cast<T*> (pw);
249
249
  delete ptr;
250
- pw = 0;
250
+ pw = BOOST_NULLPTR;
251
251
  }
252
252
  break;
253
253
  }
254
254
  case std::ios_base::copyfmt_event:
255
255
  {
256
256
  void*& pw = ios.pword(index);
257
- if (pw != 0)
257
+ if (pw != BOOST_NULLPTR)
258
258
  {
259
259
  pw = new T(*static_cast<T*> (pw));
260
260
  }
@@ -303,7 +303,7 @@ namespace boost
303
303
  explicit ios_state_not_null_ptr(std::ios_base& ios) :
304
304
  base_type(ios)
305
305
  {
306
- if (this->get() == 0)
306
+ if (this->get() == BOOST_NULLPTR)
307
307
  {
308
308
  this->base_type::reset(new T());
309
309
  }
@@ -314,7 +314,7 @@ namespace boost
314
314
 
315
315
  void reset(T* new_value) BOOST_NOEXCEPT
316
316
  {
317
- BOOST_ASSERT(new_value!=0);
317
+ BOOST_ASSERT(new_value!=BOOST_NULLPTR);
318
318
  this->base_type::reset(new_value);
319
319
  }
320
320