passenger 6.1.0 → 6.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +32 -2
  3. data/Rakefile +6 -13
  4. data/bin/passenger-install-apache2-module +15 -19
  5. data/bin/passenger-install-nginx-module +42 -44
  6. data/bin/passenger-status +9 -10
  7. data/build/common_library.rb +4 -4
  8. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
  9. data/build/test_basics.rb +4 -3
  10. data/dev/copy_boost_headers +54 -40
  11. data/dev/ruby_server.rb +1 -1
  12. data/src/agent/Core/Config.h +1 -1
  13. data/src/agent/Core/Controller/Config.h +1 -1
  14. data/src/agent/Watchdog/Config.h +1 -1
  15. data/src/cxx_supportlib/Constants.h +1 -1
  16. data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -1
  17. data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +6 -0
  18. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +94 -110
  19. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_flag.hpp +2 -2
  20. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +14 -14
  21. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/addressof.hpp +3 -3
  22. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag_impl.hpp +52 -24
  23. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_impl.hpp +641 -285
  24. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +593 -260
  25. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +37 -24
  26. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_fp_cast.hpp +9 -9
  27. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas_based_exchange.hpp +3 -3
  28. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/chrono.hpp +93 -0
  29. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/classify.hpp +16 -17
  30. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +25 -34
  31. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch32.hpp +204 -97
  32. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch64.hpp +251 -122
  33. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_alpha.hpp +56 -56
  34. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_arm.hpp +129 -129
  35. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_ppc.hpp +253 -125
  36. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_sparc.hpp +25 -25
  37. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +193 -126
  38. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_arm.hpp +57 -57
  39. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +96 -97
  40. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +24 -24
  41. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_cas_based.hpp +10 -10
  42. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_atomic.hpp +27 -24
  43. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_sync.hpp +39 -37
  44. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_linux_arm.hpp +17 -17
  45. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extending_cas_based_arithmetic.hpp +5 -5
  46. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +12 -12
  47. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_generic.hpp +21 -21
  48. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +30 -30
  49. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch32.hpp +170 -98
  50. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch64.hpp +209 -119
  51. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_arm.hpp +95 -95
  52. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_ppc.hpp +148 -76
  53. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_x86.hpp +293 -123
  54. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_generic.hpp +87 -71
  55. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_arm.hpp +5 -5
  56. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_x86.hpp +88 -88
  57. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_operations.hpp +2 -2
  58. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch32.hpp +4 -5
  59. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch64.hpp +4 -4
  60. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_alpha.hpp +4 -4
  61. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_arm.hpp +9 -9
  62. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_ppc.hpp +4 -4
  63. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_sparc.hpp +4 -4
  64. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_x86.hpp +4 -4
  65. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_arm.hpp +5 -5
  66. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_x86.hpp +6 -6
  67. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations.hpp +2 -2
  68. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations_emulated.hpp +2 -2
  69. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_atomic.hpp +5 -5
  70. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_sync.hpp +4 -4
  71. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_linux_arm.hpp +7 -7
  72. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +7 -7
  73. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_generic.hpp +6 -6
  74. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +110 -49
  75. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_atomic_memory_order_utils.hpp +1 -1
  76. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/has_posix_clock_traits.hpp +51 -0
  77. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +26 -32
  78. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_conversions.hpp +15 -15
  79. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +69 -30
  80. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/intptr.hpp +8 -8
  81. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lock_pool.hpp +51 -31
  82. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/memory_order_utils.hpp +2 -2
  83. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/once_flag.hpp +2 -2
  84. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm_common.hpp +6 -6
  85. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc_common.hpp +4 -4
  86. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +5 -5
  87. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_traits.hpp +31 -31
  88. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/alignment_of.hpp +2 -3
  89. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/has_unique_object_representations.hpp +2 -5
  90. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_floating_point.hpp +3 -3
  91. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_iec559.hpp +2 -2
  92. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_integral.hpp +3 -3
  93. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_signed.hpp +3 -3
  94. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_copyable.hpp +20 -13
  95. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_default_constructible.hpp +13 -13
  96. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_signed.hpp +3 -3
  97. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_unsigned.hpp +3 -3
  98. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_darwin_ulock.hpp +90 -16
  99. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_dragonfly_umtx.hpp +80 -11
  100. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +160 -15
  101. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_freebsd_umtx.hpp +327 -38
  102. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_futex.hpp +276 -33
  103. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_generic.hpp +260 -20
  104. data/src/cxx_supportlib/vendor-modified/boost/atomic/fences.hpp +4 -3
  105. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +14 -18
  106. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_flag.hpp +2 -2
  107. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +13 -13
  108. data/src/cxx_supportlib/vendor-modified/boost/atomic/posix_clock_traits_fwd.hpp +59 -0
  109. data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +102 -0
  110. data/src/cxx_supportlib/vendor-modified/boost/atomic/wait_result.hpp +56 -0
  111. data/src/cxx_supportlib/vendor-modified/boost/atomic.hpp +4 -1
  112. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +5 -0
  113. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
  114. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +108 -41
  115. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +1235 -1009
  116. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +3 -2
  117. data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +56 -0
  118. data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +1 -0
  119. data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +9 -9
  120. data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +23 -2
  121. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +0 -1
  122. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +88 -23
  123. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +2 -1
  124. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +2 -2
  125. data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +68 -0
  126. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +72 -13
  127. data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +13 -0
  128. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +8 -5
  129. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +31 -10
  130. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +37 -10
  131. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +19 -0
  132. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +23 -1
  133. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +72 -5
  134. data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +3 -10
  135. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +54 -23
  136. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/devector.hpp +6 -4
  137. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +19 -0
  138. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +32 -5
  139. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +27 -2
  140. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +22 -0
  141. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +37 -17
  142. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +23 -1
  143. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +41 -20
  144. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -8
  145. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +3 -1
  146. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_is_avalanching.hpp +57 -0
  147. data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +29 -29
  148. data/src/cxx_supportlib/vendor-modified/boost/core/cmath.hpp +3 -3
  149. data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +15 -1
  150. data/src/cxx_supportlib/vendor-modified/boost/core/default_allocator.hpp +1 -0
  151. data/src/cxx_supportlib/vendor-modified/boost/core/demangle.hpp +1 -1
  152. data/src/cxx_supportlib/vendor-modified/boost/core/detail/assert.hpp +18 -0
  153. data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_sleep.hpp +2 -2
  154. data/src/cxx_supportlib/vendor-modified/boost/core/detail/static_assert.hpp +42 -0
  155. data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +16 -10
  156. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +35 -27
  157. data/src/cxx_supportlib/vendor-modified/boost/core/scoped_enum.hpp +1 -1
  158. data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +14 -0
  159. data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +20 -9
  160. data/src/cxx_supportlib/vendor-modified/boost/cregex.hpp +0 -5
  161. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +8 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +1 -1
  163. data/src/cxx_supportlib/vendor-modified/boost/foreach.hpp +1 -0
  164. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +4 -4
  165. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +2 -2
  166. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_rebind.hpp +9 -0
  167. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +1 -0
  168. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +2 -2
  169. data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +43 -64
  170. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_def.hpp +0 -83
  171. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_undef.hpp +1 -5
  172. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/eval_if_default.hpp +44 -0
  173. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +103 -117
  174. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/conjunction.hpp +53 -0
  175. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/disjunction.hpp +53 -0
  176. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/negation.hpp +53 -0
  177. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/type_identity.hpp +54 -0
  178. data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +32 -38
  179. data/src/cxx_supportlib/vendor-modified/boost/iterator/enable_if_convertible.hpp +84 -0
  180. data/src/cxx_supportlib/vendor-modified/boost/iterator/interoperable.hpp +22 -34
  181. data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +16 -16
  182. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +162 -309
  183. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_categories.hpp +52 -161
  184. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +3 -11
  185. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +804 -977
  186. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_traits.hpp +24 -17
  187. data/src/cxx_supportlib/vendor-modified/boost/iterator/min_category.hpp +83 -0
  188. data/src/cxx_supportlib/vendor-modified/boost/iterator/minimum_category.hpp +11 -73
  189. data/src/cxx_supportlib/vendor-modified/boost/iterator/reverse_iterator.hpp +56 -57
  190. data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +123 -156
  191. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
  192. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +1 -1
  193. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +36 -33
  194. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +43 -50
  195. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +23 -27
  196. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +10 -11
  198. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +1 -1
  199. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
  200. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +6 -7
  201. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/type_traits.hpp +81 -0
  202. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +4 -4
  203. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +8 -9
  204. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
  205. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +1 -12
  206. data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +8 -26
  207. data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +1 -1
  208. data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +1 -1
  209. data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +6 -0
  210. data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +2 -2
  211. data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +11 -44
  212. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +34 -0
  213. data/src/cxx_supportlib/vendor-modified/boost/mp11/set.hpp +33 -1
  214. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  215. data/src/cxx_supportlib/vendor-modified/boost/mpl/and.hpp +4 -8
  216. data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_assert.hpp +1 -1
  217. data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/ptr_to_ref.hpp +1 -1
  218. data/src/cxx_supportlib/vendor-modified/boost/mpl/bitand.hpp +2 -6
  219. data/src/cxx_supportlib/vendor-modified/boost/mpl/bitor.hpp +2 -6
  220. data/src/cxx_supportlib/vendor-modified/boost/mpl/or.hpp +2 -6
  221. data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
  222. data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +0 -13
  223. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_256.hpp +190 -190
  224. data/src/cxx_supportlib/vendor-modified/boost/random/beta_distribution.hpp +12 -2
  225. data/src/cxx_supportlib/vendor-modified/boost/random/detail/config.hpp +4 -0
  226. data/src/cxx_supportlib/vendor-modified/boost/random/detail/size.hpp +41 -0
  227. data/src/cxx_supportlib/vendor-modified/boost/random/detail/xoshiro_base.hpp +472 -0
  228. data/src/cxx_supportlib/vendor-modified/boost/random/discrete_distribution.hpp +7 -10
  229. data/src/cxx_supportlib/vendor-modified/boost/random/gamma_distribution.hpp +1 -1
  230. data/src/cxx_supportlib/vendor-modified/boost/random/generalized_inverse_gaussian_distribution.hpp +339 -0
  231. data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +12 -14
  232. data/src/cxx_supportlib/vendor-modified/boost/random/inverse_gaussian_distribution.hpp +226 -0
  233. data/src/cxx_supportlib/vendor-modified/boost/random/mersenne_twister.hpp +1 -4
  234. data/src/cxx_supportlib/vendor-modified/boost/random/mixmax.hpp +63 -63
  235. data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_constant_distribution.hpp +7 -10
  236. data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_linear_distribution.hpp +8 -11
  237. data/src/cxx_supportlib/vendor-modified/boost/random/seed_seq.hpp +1 -3
  238. data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +1 -4
  239. data/src/cxx_supportlib/vendor-modified/boost/random/xoshiro.hpp +488 -0
  240. data/src/cxx_supportlib/vendor-modified/boost/random.hpp +3 -0
  241. data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +2 -0
  242. data/src/cxx_supportlib/vendor-modified/boost/range/detail/has_member_size.hpp +1 -0
  243. data/src/cxx_supportlib/vendor-modified/boost/range/detail/msvc_has_iterator_workaround.hpp +2 -0
  244. data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +1 -1
  245. data/src/cxx_supportlib/vendor-modified/boost/range/iterator.hpp +1 -0
  246. data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +4 -1
  247. data/src/cxx_supportlib/vendor-modified/boost/range/size_type.hpp +1 -1
  248. data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +35 -18
  249. data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +18 -101
  250. data/src/cxx_supportlib/vendor-modified/boost/regex/pattern_except.hpp +0 -4
  251. data/src/cxx_supportlib/vendor-modified/boost/regex/pending/object_cache.hpp +0 -4
  252. data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +0 -6
  253. data/src/cxx_supportlib/vendor-modified/boost/regex/regex_traits.hpp +0 -4
  254. data/src/cxx_supportlib/vendor-modified/boost/regex/user.hpp +4 -10
  255. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex.hpp +63 -17
  256. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_creator.hpp +71 -16
  257. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +22 -1
  258. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/c_regex_traits.hpp +11 -4
  259. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/char_regex_traits.hpp +2 -0
  260. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cpp_regex_traits.hpp +11 -8
  261. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cregex.hpp +2 -1
  262. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/error_type.hpp +1 -1
  263. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +40 -38
  264. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_category.hpp +2 -0
  265. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_traits.hpp +4 -0
  266. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_flags.hpp +39 -37
  267. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_results.hpp +46 -9
  268. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +4 -0
  269. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/object_cache.hpp +2 -0
  270. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/pattern_except.hpp +6 -4
  271. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher.hpp +57 -8
  272. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_common.hpp +21 -6
  273. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_non_recursive.hpp +18 -3
  274. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regbase.hpp +4 -2
  275. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex.hpp +6 -6
  276. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_format.hpp +23 -18
  277. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_fwd.hpp +9 -9
  278. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_grep.hpp +9 -5
  279. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_iterator.hpp +11 -7
  280. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_match.hpp +10 -7
  281. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_merge.hpp +4 -4
  282. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_raw_buffer.hpp +3 -0
  283. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_replace.hpp +6 -2
  284. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_search.hpp +12 -9
  285. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_split.hpp +6 -3
  286. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_token_iterator.hpp +16 -11
  287. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits.hpp +1 -1
  288. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits_defaults.hpp +2 -0
  289. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +2 -0
  290. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/states.hpp +7 -0
  291. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/sub_match.hpp +54 -49
  292. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/syntax_type.hpp +64 -62
  293. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_iterator.hpp +16 -0
  294. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_token_iterator.hpp +12 -0
  295. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +6 -4
  296. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +3 -1
  297. data/src/cxx_supportlib/vendor-modified/boost/regex.hpp +0 -4
  298. data/src/cxx_supportlib/vendor-modified/boost/regex_fwd.hpp +0 -4
  299. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +1 -43
  300. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/deprecated_macros.hpp +7 -7
  301. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +2 -77
  302. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +1 -64
  303. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +3 -3
  304. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +0 -77
  305. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_cxx20_constexpr.hpp +37 -0
  306. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +5 -28
  307. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +41 -40
  308. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +0 -15
  309. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +0 -18
  310. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -1
  311. data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +1 -1
  312. data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +1 -0
  313. data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +8 -6
  314. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +31 -10
  315. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +34 -8
  316. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +6 -4
  317. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +9 -1
  318. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +5 -5
  319. data/src/cxx_supportlib/vendor-modified/boost/unordered/{unordered_printers.hpp → detail/unordered_printers.hpp} +34 -36
  320. data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +6 -49
  321. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +6 -1
  322. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +6 -1
  323. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +6 -1
  324. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +6 -1
  325. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  326. data/src/nginx_module/ContentHandler.c +2 -0
  327. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -5
  328. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -5
  329. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +3 -5
  330. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +3 -5
  331. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +1 -1
  332. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +2 -2
  333. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +5 -3
  334. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
  335. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +6 -13
  336. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +29 -30
  337. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -3
  338. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -0
  339. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -1
  340. data/src/ruby_supportlib/phusion_passenger/utils/json.rb +1 -1
  341. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
  342. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
  343. data/src/ruby_supportlib/phusion_passenger.rb +8 -8
  344. metadata +26 -99
  345. data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +0 -47
  346. data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +0 -41
  347. data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_sunos.hpp +0 -34
  348. data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +0 -28
  349. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +0 -68
  350. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/conditional.hpp +0 -42
  351. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/integral_constant.hpp +0 -46
  352. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_enum.hpp +0 -42
  353. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_function.hpp +0 -42
  354. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_nothrow_default_constructible.hpp +0 -46
  355. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +0 -42
  356. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +0 -64
  357. data/src/cxx_supportlib/vendor-modified/boost/cerrno.hpp +0 -15
  358. data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +0 -195
  359. data/src/cxx_supportlib/vendor-modified/boost/detail/select_type.hpp +0 -36
  360. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/enable_if.hpp +0 -83
  361. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/internals.hpp +0 -35
  362. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +0 -120
  363. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_debug.cpp +0 -59
  364. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/static_mutex.cpp +0 -189
  365. data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +0 -31
  366. data/src/cxx_supportlib/vendor-modified/boost/regex/config/borland.hpp +0 -72
  367. data/src/cxx_supportlib/vendor-modified/boost/regex/config/cwchar.hpp +0 -207
  368. data/src/cxx_supportlib/vendor-modified/boost/regex/pending/static_mutex.hpp +0 -182
  369. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +0 -797
  370. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +0 -1598
  371. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +0 -3174
  372. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/c_regex_traits.hpp +0 -511
  373. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/char_regex_traits.hpp +0 -81
  374. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +0 -1237
  375. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cregex.hpp +0 -213
  376. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/error_type.hpp +0 -59
  377. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/icu.hpp +0 -1516
  378. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/indexed_bit_flag.hpp +0 -54
  379. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_category.hpp +0 -91
  380. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_traits.hpp +0 -135
  381. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +0 -161
  382. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +0 -716
  383. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +0 -183
  384. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/object_cache.hpp +0 -171
  385. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/pattern_except.hpp +0 -128
  386. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +0 -645
  387. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +0 -1030
  388. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +0 -1947
  389. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +0 -1131
  390. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/primary_transform.hpp +0 -146
  391. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/protected_call.hpp +0 -83
  392. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regbase.hpp +0 -180
  393. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex.hpp +0 -166
  394. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -1158
  395. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_fwd.hpp +0 -73
  396. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_grep.hpp +0 -155
  397. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -195
  398. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_match.hpp +0 -382
  399. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_merge.hpp +0 -93
  400. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +0 -241
  401. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_replace.hpp +0 -99
  402. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_search.hpp +0 -217
  403. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +0 -174
  404. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -327
  405. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +0 -189
  406. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +0 -997
  407. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +0 -237
  408. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/states.hpp +0 -321
  409. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/sub_match.hpp +0 -516
  410. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/syntax_type.hpp +0 -105
  411. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +0 -185
  412. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +0 -360
  413. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +0 -871
  414. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +0 -1229
  415. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc.hpp +0 -79
  416. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_atomic.hpp +0 -63
  417. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_x86.hpp +0 -88
  418. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_pt.hpp +0 -104
  419. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_spin.hpp +0 -69
  420. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_sync.hpp +0 -72
  421. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +0 -163
  422. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +0 -152
  423. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +0 -185
  424. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +0 -148
  425. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +0 -170
  426. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +0 -200
  427. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +0 -194
  428. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +0 -179
  429. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +0 -186
  430. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +0 -147
  431. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +0 -174
  432. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +0 -141
  433. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +0 -165
  434. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +0 -163
  435. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +0 -30
  436. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync_intrinsics.hpp +0 -69
  437. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +0 -128
  438. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_nt.hpp +0 -96
  439. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_pt.hpp +0 -86
  440. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_sync.hpp +0 -94
@@ -1,997 +0,0 @@
1
- /*
2
- *
3
- * Copyright (c) 2004
4
- * John Maddock
5
- *
6
- * Use, modification and distribution are subject to the
7
- * Boost Software License, Version 1.0. (See accompanying file
8
- * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
- *
10
- */
11
-
12
- /*
13
- * LOCATION: see http://www.boost.org for most recent version.
14
- * FILE regex_traits_defaults.hpp
15
- * VERSION see <boost/version.hpp>
16
- * DESCRIPTION: Declares API's for access to regex_traits default properties.
17
- */
18
-
19
- #ifndef BOOST_REGEX_TRAITS_DEFAULTS_HPP_INCLUDED
20
- #define BOOST_REGEX_TRAITS_DEFAULTS_HPP_INCLUDED
21
-
22
- #ifdef BOOST_MSVC
23
- #pragma warning(push)
24
- #pragma warning(disable: 4103)
25
- #endif
26
- #ifdef BOOST_HAS_ABI_HEADERS
27
- # include BOOST_ABI_PREFIX
28
- #endif
29
- #ifdef BOOST_MSVC
30
- #pragma warning(pop)
31
- #endif
32
-
33
- #include <boost/regex/config.hpp>
34
- #include <boost/cstdint.hpp>
35
-
36
- #include <cctype>
37
- #include <cwctype>
38
- #include <locale>
39
-
40
- #ifndef BOOST_REGEX_SYNTAX_TYPE_HPP
41
- #include <boost/regex/v4/syntax_type.hpp>
42
- #endif
43
- #ifndef BOOST_REGEX_ERROR_TYPE_HPP
44
- #include <boost/regex/v4/error_type.hpp>
45
- #endif
46
- #include <boost/regex/v4/regex_workaround.hpp>
47
- #include <boost/type_traits/make_unsigned.hpp>
48
- #include <boost/utility/enable_if.hpp>
49
-
50
- #ifdef BOOST_NO_STDC_NAMESPACE
51
- namespace std{
52
- using ::strlen;
53
- }
54
- #endif
55
-
56
- namespace boost{ namespace BOOST_REGEX_DETAIL_NS{
57
-
58
-
59
- //
60
- // helpers to suppress warnings:
61
- //
62
- template <class charT>
63
- inline bool is_extended(charT c)
64
- {
65
- typedef typename make_unsigned<charT>::type unsigned_type;
66
- return (sizeof(charT) > 1) && (static_cast<unsigned_type>(c) >= 256u);
67
- }
68
- inline bool is_extended(char)
69
- { return false; }
70
-
71
- inline const char* BOOST_REGEX_CALL get_default_syntax(regex_constants::syntax_type n)
72
- {
73
- // if the user hasn't supplied a message catalog, then this supplies
74
- // default "messages" for us to load in the range 1-100.
75
- const char* messages[] = {
76
- "",
77
- "(",
78
- ")",
79
- "$",
80
- "^",
81
- ".",
82
- "*",
83
- "+",
84
- "?",
85
- "[",
86
- "]",
87
- "|",
88
- "\\",
89
- "#",
90
- "-",
91
- "{",
92
- "}",
93
- "0123456789",
94
- "b",
95
- "B",
96
- "<",
97
- ">",
98
- "",
99
- "",
100
- "A`",
101
- "z'",
102
- "\n",
103
- ",",
104
- "a",
105
- "f",
106
- "n",
107
- "r",
108
- "t",
109
- "v",
110
- "x",
111
- "c",
112
- ":",
113
- "=",
114
- "e",
115
- "",
116
- "",
117
- "",
118
- "",
119
- "",
120
- "",
121
- "",
122
- "",
123
- "E",
124
- "Q",
125
- "X",
126
- "C",
127
- "Z",
128
- "G",
129
- "!",
130
- "p",
131
- "P",
132
- "N",
133
- "gk",
134
- "K",
135
- "R",
136
- };
137
-
138
- return ((n >= (sizeof(messages) / sizeof(messages[1]))) ? "" : messages[n]);
139
- }
140
-
141
- inline const char* BOOST_REGEX_CALL get_default_error_string(regex_constants::error_type n)
142
- {
143
- static const char* const s_default_error_messages[] = {
144
- "Success", /* REG_NOERROR 0 error_ok */
145
- "No match", /* REG_NOMATCH 1 error_no_match */
146
- "Invalid regular expression.", /* REG_BADPAT 2 error_bad_pattern */
147
- "Invalid collation character.", /* REG_ECOLLATE 3 error_collate */
148
- "Invalid character class name, collating name, or character range.", /* REG_ECTYPE 4 error_ctype */
149
- "Invalid or unterminated escape sequence.", /* REG_EESCAPE 5 error_escape */
150
- "Invalid back reference: specified capturing group does not exist.", /* REG_ESUBREG 6 error_backref */
151
- "Unmatched [ or [^ in character class declaration.", /* REG_EBRACK 7 error_brack */
152
- "Unmatched marking parenthesis ( or \\(.", /* REG_EPAREN 8 error_paren */
153
- "Unmatched quantified repeat operator { or \\{.", /* REG_EBRACE 9 error_brace */
154
- "Invalid content of repeat range.", /* REG_BADBR 10 error_badbrace */
155
- "Invalid range end in character class", /* REG_ERANGE 11 error_range */
156
- "Out of memory.", /* REG_ESPACE 12 error_space NOT USED */
157
- "Invalid preceding regular expression prior to repetition operator.", /* REG_BADRPT 13 error_badrepeat */
158
- "Premature end of regular expression", /* REG_EEND 14 error_end NOT USED */
159
- "Regular expression is too large.", /* REG_ESIZE 15 error_size NOT USED */
160
- "Unmatched ) or \\)", /* REG_ERPAREN 16 error_right_paren NOT USED */
161
- "Empty regular expression.", /* REG_EMPTY 17 error_empty */
162
- "The complexity of matching the regular expression exceeded predefined bounds. "
163
- "Try refactoring the regular expression to make each choice made by the state machine unambiguous. "
164
- "This exception is thrown to prevent \"eternal\" matches that take an "
165
- "indefinite period time to locate.", /* REG_ECOMPLEXITY 18 error_complexity */
166
- "Ran out of stack space trying to match the regular expression.", /* REG_ESTACK 19 error_stack */
167
- "Invalid or unterminated Perl (?...) sequence.", /* REG_E_PERL 20 error_perl */
168
- "Unknown error.", /* REG_E_UNKNOWN 21 error_unknown */
169
- };
170
-
171
- return (n > ::boost::regex_constants::error_unknown) ? s_default_error_messages[::boost::regex_constants::error_unknown] : s_default_error_messages[n];
172
- }
173
-
174
- inline regex_constants::syntax_type BOOST_REGEX_CALL get_default_syntax_type(char c)
175
- {
176
- //
177
- // char_syntax determines how the compiler treats a given character
178
- // in a regular expression.
179
- //
180
- static regex_constants::syntax_type char_syntax[] = {
181
- regex_constants::syntax_char, /**/
182
- regex_constants::syntax_char, /**/
183
- regex_constants::syntax_char, /**/
184
- regex_constants::syntax_char, /**/
185
- regex_constants::syntax_char, /**/
186
- regex_constants::syntax_char, /**/
187
- regex_constants::syntax_char, /**/
188
- regex_constants::syntax_char, /**/
189
- regex_constants::syntax_char, /**/
190
- regex_constants::syntax_char, /**/
191
- regex_constants::syntax_newline, /**/
192
- regex_constants::syntax_char, /**/
193
- regex_constants::syntax_char, /**/
194
- regex_constants::syntax_char, /**/
195
- regex_constants::syntax_char, /**/
196
- regex_constants::syntax_char, /**/
197
- regex_constants::syntax_char, /**/
198
- regex_constants::syntax_char, /**/
199
- regex_constants::syntax_char, /**/
200
- regex_constants::syntax_char, /**/
201
- regex_constants::syntax_char, /**/
202
- regex_constants::syntax_char, /**/
203
- regex_constants::syntax_char, /**/
204
- regex_constants::syntax_char, /**/
205
- regex_constants::syntax_char, /**/
206
- regex_constants::syntax_char, /**/
207
- regex_constants::syntax_char, /**/
208
- regex_constants::syntax_char, /**/
209
- regex_constants::syntax_char, /**/
210
- regex_constants::syntax_char, /**/
211
- regex_constants::syntax_char, /**/
212
- regex_constants::syntax_char, /**/
213
- regex_constants::syntax_char, /* */ // 32
214
- regex_constants::syntax_not, /*!*/
215
- regex_constants::syntax_char, /*"*/
216
- regex_constants::syntax_hash, /*#*/
217
- regex_constants::syntax_dollar, /*$*/
218
- regex_constants::syntax_char, /*%*/
219
- regex_constants::syntax_char, /*&*/
220
- regex_constants::escape_type_end_buffer, /*'*/
221
- regex_constants::syntax_open_mark, /*(*/
222
- regex_constants::syntax_close_mark, /*)*/
223
- regex_constants::syntax_star, /***/
224
- regex_constants::syntax_plus, /*+*/
225
- regex_constants::syntax_comma, /*,*/
226
- regex_constants::syntax_dash, /*-*/
227
- regex_constants::syntax_dot, /*.*/
228
- regex_constants::syntax_char, /*/*/
229
- regex_constants::syntax_digit, /*0*/
230
- regex_constants::syntax_digit, /*1*/
231
- regex_constants::syntax_digit, /*2*/
232
- regex_constants::syntax_digit, /*3*/
233
- regex_constants::syntax_digit, /*4*/
234
- regex_constants::syntax_digit, /*5*/
235
- regex_constants::syntax_digit, /*6*/
236
- regex_constants::syntax_digit, /*7*/
237
- regex_constants::syntax_digit, /*8*/
238
- regex_constants::syntax_digit, /*9*/
239
- regex_constants::syntax_colon, /*:*/
240
- regex_constants::syntax_char, /*;*/
241
- regex_constants::escape_type_left_word, /*<*/
242
- regex_constants::syntax_equal, /*=*/
243
- regex_constants::escape_type_right_word, /*>*/
244
- regex_constants::syntax_question, /*?*/
245
- regex_constants::syntax_char, /*@*/
246
- regex_constants::syntax_char, /*A*/
247
- regex_constants::syntax_char, /*B*/
248
- regex_constants::syntax_char, /*C*/
249
- regex_constants::syntax_char, /*D*/
250
- regex_constants::syntax_char, /*E*/
251
- regex_constants::syntax_char, /*F*/
252
- regex_constants::syntax_char, /*G*/
253
- regex_constants::syntax_char, /*H*/
254
- regex_constants::syntax_char, /*I*/
255
- regex_constants::syntax_char, /*J*/
256
- regex_constants::syntax_char, /*K*/
257
- regex_constants::syntax_char, /*L*/
258
- regex_constants::syntax_char, /*M*/
259
- regex_constants::syntax_char, /*N*/
260
- regex_constants::syntax_char, /*O*/
261
- regex_constants::syntax_char, /*P*/
262
- regex_constants::syntax_char, /*Q*/
263
- regex_constants::syntax_char, /*R*/
264
- regex_constants::syntax_char, /*S*/
265
- regex_constants::syntax_char, /*T*/
266
- regex_constants::syntax_char, /*U*/
267
- regex_constants::syntax_char, /*V*/
268
- regex_constants::syntax_char, /*W*/
269
- regex_constants::syntax_char, /*X*/
270
- regex_constants::syntax_char, /*Y*/
271
- regex_constants::syntax_char, /*Z*/
272
- regex_constants::syntax_open_set, /*[*/
273
- regex_constants::syntax_escape, /*\*/
274
- regex_constants::syntax_close_set, /*]*/
275
- regex_constants::syntax_caret, /*^*/
276
- regex_constants::syntax_char, /*_*/
277
- regex_constants::syntax_char, /*`*/
278
- regex_constants::syntax_char, /*a*/
279
- regex_constants::syntax_char, /*b*/
280
- regex_constants::syntax_char, /*c*/
281
- regex_constants::syntax_char, /*d*/
282
- regex_constants::syntax_char, /*e*/
283
- regex_constants::syntax_char, /*f*/
284
- regex_constants::syntax_char, /*g*/
285
- regex_constants::syntax_char, /*h*/
286
- regex_constants::syntax_char, /*i*/
287
- regex_constants::syntax_char, /*j*/
288
- regex_constants::syntax_char, /*k*/
289
- regex_constants::syntax_char, /*l*/
290
- regex_constants::syntax_char, /*m*/
291
- regex_constants::syntax_char, /*n*/
292
- regex_constants::syntax_char, /*o*/
293
- regex_constants::syntax_char, /*p*/
294
- regex_constants::syntax_char, /*q*/
295
- regex_constants::syntax_char, /*r*/
296
- regex_constants::syntax_char, /*s*/
297
- regex_constants::syntax_char, /*t*/
298
- regex_constants::syntax_char, /*u*/
299
- regex_constants::syntax_char, /*v*/
300
- regex_constants::syntax_char, /*w*/
301
- regex_constants::syntax_char, /*x*/
302
- regex_constants::syntax_char, /*y*/
303
- regex_constants::syntax_char, /*z*/
304
- regex_constants::syntax_open_brace, /*{*/
305
- regex_constants::syntax_or, /*|*/
306
- regex_constants::syntax_close_brace, /*}*/
307
- regex_constants::syntax_char, /*~*/
308
- regex_constants::syntax_char, /**/
309
- regex_constants::syntax_char, /**/
310
- regex_constants::syntax_char, /**/
311
- regex_constants::syntax_char, /**/
312
- regex_constants::syntax_char, /**/
313
- regex_constants::syntax_char, /**/
314
- regex_constants::syntax_char, /**/
315
- regex_constants::syntax_char, /**/
316
- regex_constants::syntax_char, /**/
317
- regex_constants::syntax_char, /**/
318
- regex_constants::syntax_char, /**/
319
- regex_constants::syntax_char, /**/
320
- regex_constants::syntax_char, /**/
321
- regex_constants::syntax_char, /**/
322
- regex_constants::syntax_char, /**/
323
- regex_constants::syntax_char, /**/
324
- regex_constants::syntax_char, /**/
325
- regex_constants::syntax_char, /**/
326
- regex_constants::syntax_char, /**/
327
- regex_constants::syntax_char, /**/
328
- regex_constants::syntax_char, /**/
329
- regex_constants::syntax_char, /**/
330
- regex_constants::syntax_char, /**/
331
- regex_constants::syntax_char, /**/
332
- regex_constants::syntax_char, /**/
333
- regex_constants::syntax_char, /**/
334
- regex_constants::syntax_char, /**/
335
- regex_constants::syntax_char, /**/
336
- regex_constants::syntax_char, /**/
337
- regex_constants::syntax_char, /**/
338
- regex_constants::syntax_char, /**/
339
- regex_constants::syntax_char, /**/
340
- regex_constants::syntax_char, /**/
341
- regex_constants::syntax_char, /**/
342
- regex_constants::syntax_char, /**/
343
- regex_constants::syntax_char, /**/
344
- regex_constants::syntax_char, /**/
345
- regex_constants::syntax_char, /**/
346
- regex_constants::syntax_char, /**/
347
- regex_constants::syntax_char, /**/
348
- regex_constants::syntax_char, /**/
349
- regex_constants::syntax_char, /**/
350
- regex_constants::syntax_char, /**/
351
- regex_constants::syntax_char, /**/
352
- regex_constants::syntax_char, /**/
353
- regex_constants::syntax_char, /**/
354
- regex_constants::syntax_char, /**/
355
- regex_constants::syntax_char, /**/
356
- regex_constants::syntax_char, /**/
357
- regex_constants::syntax_char, /**/
358
- regex_constants::syntax_char, /**/
359
- regex_constants::syntax_char, /**/
360
- regex_constants::syntax_char, /**/
361
- regex_constants::syntax_char, /**/
362
- regex_constants::syntax_char, /**/
363
- regex_constants::syntax_char, /**/
364
- };
365
-
366
- return char_syntax[(unsigned char)c];
367
- }
368
-
369
- inline regex_constants::escape_syntax_type BOOST_REGEX_CALL get_default_escape_syntax_type(char c)
370
- {
371
- //
372
- // char_syntax determines how the compiler treats a given character
373
- // in a regular expression.
374
- //
375
- static regex_constants::escape_syntax_type char_syntax[] = {
376
- regex_constants::escape_type_identity, /**/
377
- regex_constants::escape_type_identity, /**/
378
- regex_constants::escape_type_identity, /**/
379
- regex_constants::escape_type_identity, /**/
380
- regex_constants::escape_type_identity, /**/
381
- regex_constants::escape_type_identity, /**/
382
- regex_constants::escape_type_identity, /**/
383
- regex_constants::escape_type_identity, /**/
384
- regex_constants::escape_type_identity, /**/
385
- regex_constants::escape_type_identity, /**/
386
- regex_constants::escape_type_identity, /**/
387
- regex_constants::escape_type_identity, /**/
388
- regex_constants::escape_type_identity, /**/
389
- regex_constants::escape_type_identity, /**/
390
- regex_constants::escape_type_identity, /**/
391
- regex_constants::escape_type_identity, /**/
392
- regex_constants::escape_type_identity, /**/
393
- regex_constants::escape_type_identity, /**/
394
- regex_constants::escape_type_identity, /**/
395
- regex_constants::escape_type_identity, /**/
396
- regex_constants::escape_type_identity, /**/
397
- regex_constants::escape_type_identity, /**/
398
- regex_constants::escape_type_identity, /**/
399
- regex_constants::escape_type_identity, /**/
400
- regex_constants::escape_type_identity, /**/
401
- regex_constants::escape_type_identity, /**/
402
- regex_constants::escape_type_identity, /**/
403
- regex_constants::escape_type_identity, /**/
404
- regex_constants::escape_type_identity, /**/
405
- regex_constants::escape_type_identity, /**/
406
- regex_constants::escape_type_identity, /**/
407
- regex_constants::escape_type_identity, /**/
408
- regex_constants::escape_type_identity, /* */ // 32
409
- regex_constants::escape_type_identity, /*!*/
410
- regex_constants::escape_type_identity, /*"*/
411
- regex_constants::escape_type_identity, /*#*/
412
- regex_constants::escape_type_identity, /*$*/
413
- regex_constants::escape_type_identity, /*%*/
414
- regex_constants::escape_type_identity, /*&*/
415
- regex_constants::escape_type_end_buffer, /*'*/
416
- regex_constants::syntax_open_mark, /*(*/
417
- regex_constants::syntax_close_mark, /*)*/
418
- regex_constants::escape_type_identity, /***/
419
- regex_constants::syntax_plus, /*+*/
420
- regex_constants::escape_type_identity, /*,*/
421
- regex_constants::escape_type_identity, /*-*/
422
- regex_constants::escape_type_identity, /*.*/
423
- regex_constants::escape_type_identity, /*/*/
424
- regex_constants::escape_type_decimal, /*0*/
425
- regex_constants::escape_type_backref, /*1*/
426
- regex_constants::escape_type_backref, /*2*/
427
- regex_constants::escape_type_backref, /*3*/
428
- regex_constants::escape_type_backref, /*4*/
429
- regex_constants::escape_type_backref, /*5*/
430
- regex_constants::escape_type_backref, /*6*/
431
- regex_constants::escape_type_backref, /*7*/
432
- regex_constants::escape_type_backref, /*8*/
433
- regex_constants::escape_type_backref, /*9*/
434
- regex_constants::escape_type_identity, /*:*/
435
- regex_constants::escape_type_identity, /*;*/
436
- regex_constants::escape_type_left_word, /*<*/
437
- regex_constants::escape_type_identity, /*=*/
438
- regex_constants::escape_type_right_word, /*>*/
439
- regex_constants::syntax_question, /*?*/
440
- regex_constants::escape_type_identity, /*@*/
441
- regex_constants::escape_type_start_buffer, /*A*/
442
- regex_constants::escape_type_not_word_assert, /*B*/
443
- regex_constants::escape_type_C, /*C*/
444
- regex_constants::escape_type_not_class, /*D*/
445
- regex_constants::escape_type_E, /*E*/
446
- regex_constants::escape_type_not_class, /*F*/
447
- regex_constants::escape_type_G, /*G*/
448
- regex_constants::escape_type_not_class, /*H*/
449
- regex_constants::escape_type_not_class, /*I*/
450
- regex_constants::escape_type_not_class, /*J*/
451
- regex_constants::escape_type_reset_start_mark, /*K*/
452
- regex_constants::escape_type_not_class, /*L*/
453
- regex_constants::escape_type_not_class, /*M*/
454
- regex_constants::escape_type_named_char, /*N*/
455
- regex_constants::escape_type_not_class, /*O*/
456
- regex_constants::escape_type_not_property, /*P*/
457
- regex_constants::escape_type_Q, /*Q*/
458
- regex_constants::escape_type_line_ending, /*R*/
459
- regex_constants::escape_type_not_class, /*S*/
460
- regex_constants::escape_type_not_class, /*T*/
461
- regex_constants::escape_type_not_class, /*U*/
462
- regex_constants::escape_type_not_class, /*V*/
463
- regex_constants::escape_type_not_class, /*W*/
464
- regex_constants::escape_type_X, /*X*/
465
- regex_constants::escape_type_not_class, /*Y*/
466
- regex_constants::escape_type_Z, /*Z*/
467
- regex_constants::escape_type_identity, /*[*/
468
- regex_constants::escape_type_identity, /*\*/
469
- regex_constants::escape_type_identity, /*]*/
470
- regex_constants::escape_type_identity, /*^*/
471
- regex_constants::escape_type_identity, /*_*/
472
- regex_constants::escape_type_start_buffer, /*`*/
473
- regex_constants::escape_type_control_a, /*a*/
474
- regex_constants::escape_type_word_assert, /*b*/
475
- regex_constants::escape_type_ascii_control, /*c*/
476
- regex_constants::escape_type_class, /*d*/
477
- regex_constants::escape_type_e, /*e*/
478
- regex_constants::escape_type_control_f, /*f*/
479
- regex_constants::escape_type_extended_backref, /*g*/
480
- regex_constants::escape_type_class, /*h*/
481
- regex_constants::escape_type_class, /*i*/
482
- regex_constants::escape_type_class, /*j*/
483
- regex_constants::escape_type_extended_backref, /*k*/
484
- regex_constants::escape_type_class, /*l*/
485
- regex_constants::escape_type_class, /*m*/
486
- regex_constants::escape_type_control_n, /*n*/
487
- regex_constants::escape_type_class, /*o*/
488
- regex_constants::escape_type_property, /*p*/
489
- regex_constants::escape_type_class, /*q*/
490
- regex_constants::escape_type_control_r, /*r*/
491
- regex_constants::escape_type_class, /*s*/
492
- regex_constants::escape_type_control_t, /*t*/
493
- regex_constants::escape_type_class, /*u*/
494
- regex_constants::escape_type_control_v, /*v*/
495
- regex_constants::escape_type_class, /*w*/
496
- regex_constants::escape_type_hex, /*x*/
497
- regex_constants::escape_type_class, /*y*/
498
- regex_constants::escape_type_end_buffer, /*z*/
499
- regex_constants::syntax_open_brace, /*{*/
500
- regex_constants::syntax_or, /*|*/
501
- regex_constants::syntax_close_brace, /*}*/
502
- regex_constants::escape_type_identity, /*~*/
503
- regex_constants::escape_type_identity, /**/
504
- regex_constants::escape_type_identity, /**/
505
- regex_constants::escape_type_identity, /**/
506
- regex_constants::escape_type_identity, /**/
507
- regex_constants::escape_type_identity, /**/
508
- regex_constants::escape_type_identity, /**/
509
- regex_constants::escape_type_identity, /**/
510
- regex_constants::escape_type_identity, /**/
511
- regex_constants::escape_type_identity, /**/
512
- regex_constants::escape_type_identity, /**/
513
- regex_constants::escape_type_identity, /**/
514
- regex_constants::escape_type_identity, /**/
515
- regex_constants::escape_type_identity, /**/
516
- regex_constants::escape_type_identity, /**/
517
- regex_constants::escape_type_identity, /**/
518
- regex_constants::escape_type_identity, /**/
519
- regex_constants::escape_type_identity, /**/
520
- regex_constants::escape_type_identity, /**/
521
- regex_constants::escape_type_identity, /**/
522
- regex_constants::escape_type_identity, /**/
523
- regex_constants::escape_type_identity, /**/
524
- regex_constants::escape_type_identity, /**/
525
- regex_constants::escape_type_identity, /**/
526
- regex_constants::escape_type_identity, /**/
527
- regex_constants::escape_type_identity, /**/
528
- regex_constants::escape_type_identity, /**/
529
- regex_constants::escape_type_identity, /**/
530
- regex_constants::escape_type_identity, /**/
531
- regex_constants::escape_type_identity, /**/
532
- regex_constants::escape_type_identity, /**/
533
- regex_constants::escape_type_identity, /**/
534
- regex_constants::escape_type_identity, /**/
535
- regex_constants::escape_type_identity, /**/
536
- regex_constants::escape_type_identity, /**/
537
- regex_constants::escape_type_identity, /**/
538
- regex_constants::escape_type_identity, /**/
539
- regex_constants::escape_type_identity, /**/
540
- regex_constants::escape_type_identity, /**/
541
- regex_constants::escape_type_identity, /**/
542
- regex_constants::escape_type_identity, /**/
543
- regex_constants::escape_type_identity, /**/
544
- regex_constants::escape_type_identity, /**/
545
- regex_constants::escape_type_identity, /**/
546
- regex_constants::escape_type_identity, /**/
547
- regex_constants::escape_type_identity, /**/
548
- regex_constants::escape_type_identity, /**/
549
- regex_constants::escape_type_identity, /**/
550
- regex_constants::escape_type_identity, /**/
551
- regex_constants::escape_type_identity, /**/
552
- regex_constants::escape_type_identity, /**/
553
- regex_constants::escape_type_identity, /**/
554
- regex_constants::escape_type_identity, /**/
555
- regex_constants::escape_type_identity, /**/
556
- regex_constants::escape_type_identity, /**/
557
- regex_constants::escape_type_identity, /**/
558
- regex_constants::escape_type_identity, /**/
559
- };
560
-
561
- return char_syntax[(unsigned char)c];
562
- }
563
-
564
- // is charT c a combining character?
565
- inline bool BOOST_REGEX_CALL is_combining_implementation(boost::uint_least16_t c)
566
- {
567
- const boost::uint_least16_t combining_ranges[] = { 0x0300, 0x0361,
568
- 0x0483, 0x0486,
569
- 0x0903, 0x0903,
570
- 0x093E, 0x0940,
571
- 0x0949, 0x094C,
572
- 0x0982, 0x0983,
573
- 0x09BE, 0x09C0,
574
- 0x09C7, 0x09CC,
575
- 0x09D7, 0x09D7,
576
- 0x0A3E, 0x0A40,
577
- 0x0A83, 0x0A83,
578
- 0x0ABE, 0x0AC0,
579
- 0x0AC9, 0x0ACC,
580
- 0x0B02, 0x0B03,
581
- 0x0B3E, 0x0B3E,
582
- 0x0B40, 0x0B40,
583
- 0x0B47, 0x0B4C,
584
- 0x0B57, 0x0B57,
585
- 0x0B83, 0x0B83,
586
- 0x0BBE, 0x0BBF,
587
- 0x0BC1, 0x0BCC,
588
- 0x0BD7, 0x0BD7,
589
- 0x0C01, 0x0C03,
590
- 0x0C41, 0x0C44,
591
- 0x0C82, 0x0C83,
592
- 0x0CBE, 0x0CBE,
593
- 0x0CC0, 0x0CC4,
594
- 0x0CC7, 0x0CCB,
595
- 0x0CD5, 0x0CD6,
596
- 0x0D02, 0x0D03,
597
- 0x0D3E, 0x0D40,
598
- 0x0D46, 0x0D4C,
599
- 0x0D57, 0x0D57,
600
- 0x0F7F, 0x0F7F,
601
- 0x20D0, 0x20E1,
602
- 0x3099, 0x309A,
603
- 0xFE20, 0xFE23,
604
- 0xffff, 0xffff, };
605
-
606
- const boost::uint_least16_t* p = combining_ranges + 1;
607
- while (*p < c) p += 2;
608
- --p;
609
- if ((c >= *p) && (c <= *(p + 1)))
610
- return true;
611
- return false;
612
- }
613
-
614
- template <class charT>
615
- inline bool is_combining(charT c)
616
- {
617
- return (c <= static_cast<charT>(0)) ? false : ((c >= static_cast<charT>((std::numeric_limits<uint_least16_t>::max)())) ? false : is_combining_implementation(static_cast<unsigned short>(c)));
618
- }
619
- template <>
620
- inline bool is_combining<char>(char)
621
- {
622
- return false;
623
- }
624
- template <>
625
- inline bool is_combining<signed char>(signed char)
626
- {
627
- return false;
628
- }
629
- template <>
630
- inline bool is_combining<unsigned char>(unsigned char)
631
- {
632
- return false;
633
- }
634
- #if !defined(__hpux) && !defined(__WINSCW__) // can't use WCHAR_MAX/MIN in pp-directives
635
- #ifdef _MSC_VER
636
- template<>
637
- inline bool is_combining<wchar_t>(wchar_t c)
638
- {
639
- return is_combining_implementation(static_cast<unsigned short>(c));
640
- }
641
- #elif !defined(__DECCXX) && !defined(__osf__) && !defined(__OSF__) && defined(WCHAR_MIN) && (WCHAR_MIN == 0) && !defined(BOOST_NO_INTRINSIC_WCHAR_T)
642
- #if defined(WCHAR_MAX) && (WCHAR_MAX <= USHRT_MAX)
643
- template<>
644
- inline bool is_combining<wchar_t>(wchar_t c)
645
- {
646
- return is_combining_implementation(static_cast<unsigned short>(c));
647
- }
648
- #else
649
- template<>
650
- inline bool is_combining<wchar_t>(wchar_t c)
651
- {
652
- return (c >= (std::numeric_limits<uint_least16_t>::max)()) ? false : is_combining_implementation(static_cast<unsigned short>(c));
653
- }
654
- #endif
655
- #endif
656
- #endif
657
-
658
- //
659
- // is a charT c a line separator?
660
- //
661
- template <class charT>
662
- inline bool is_separator(charT c)
663
- {
664
- return BOOST_REGEX_MAKE_BOOL(
665
- (c == static_cast<charT>('\n'))
666
- || (c == static_cast<charT>('\r'))
667
- || (c == static_cast<charT>('\f'))
668
- || (static_cast<boost::uint16_t>(c) == 0x2028u)
669
- || (static_cast<boost::uint16_t>(c) == 0x2029u)
670
- || (static_cast<boost::uint16_t>(c) == 0x85u));
671
- }
672
- template <>
673
- inline bool is_separator<char>(char c)
674
- {
675
- return BOOST_REGEX_MAKE_BOOL((c == '\n') || (c == '\r') || (c == '\f'));
676
- }
677
-
678
- //
679
- // get a default collating element:
680
- //
681
- inline std::string BOOST_REGEX_CALL lookup_default_collate_name(const std::string& name)
682
- {
683
- //
684
- // these are the POSIX collating names:
685
- //
686
- static const char* def_coll_names[] = {
687
- "NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "alert", "backspace", "tab", "newline",
688
- "vertical-tab", "form-feed", "carriage-return", "SO", "SI", "DLE", "DC1", "DC2", "DC3", "DC4", "NAK",
689
- "SYN", "ETB", "CAN", "EM", "SUB", "ESC", "IS4", "IS3", "IS2", "IS1", "space", "exclamation-mark",
690
- "quotation-mark", "number-sign", "dollar-sign", "percent-sign", "ampersand", "apostrophe",
691
- "left-parenthesis", "right-parenthesis", "asterisk", "plus-sign", "comma", "hyphen",
692
- "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine",
693
- "colon", "semicolon", "less-than-sign", "equals-sign", "greater-than-sign",
694
- "question-mark", "commercial-at", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
695
- "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "left-square-bracket", "backslash",
696
- "right-square-bracket", "circumflex", "underscore", "grave-accent", "a", "b", "c", "d", "e", "f",
697
- "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "left-curly-bracket",
698
- "vertical-line", "right-curly-bracket", "tilde", "DEL", "",
699
- };
700
-
701
- // these multi-character collating elements
702
- // should keep most Western-European locales
703
- // happy - we should really localise these a
704
- // little more - but this will have to do for
705
- // now:
706
-
707
- static const char* def_multi_coll[] = {
708
- "ae",
709
- "Ae",
710
- "AE",
711
- "ch",
712
- "Ch",
713
- "CH",
714
- "ll",
715
- "Ll",
716
- "LL",
717
- "ss",
718
- "Ss",
719
- "SS",
720
- "nj",
721
- "Nj",
722
- "NJ",
723
- "dz",
724
- "Dz",
725
- "DZ",
726
- "lj",
727
- "Lj",
728
- "LJ",
729
- "",
730
- };
731
-
732
- unsigned int i = 0;
733
- while (*def_coll_names[i])
734
- {
735
- if (def_coll_names[i] == name)
736
- {
737
- return std::string(1, char(i));
738
- }
739
- ++i;
740
- }
741
- i = 0;
742
- while (*def_multi_coll[i])
743
- {
744
- if (def_multi_coll[i] == name)
745
- {
746
- return def_multi_coll[i];
747
- }
748
- ++i;
749
- }
750
- return std::string();
751
- }
752
-
753
- //
754
- // get the state_id of a character classification, the individual
755
- // traits classes then transform that state_id into a bitmask:
756
- //
757
- template <class charT>
758
- struct character_pointer_range
759
- {
760
- const charT* p1;
761
- const charT* p2;
762
-
763
- bool operator < (const character_pointer_range& r)const
764
- {
765
- return std::lexicographical_compare(p1, p2, r.p1, r.p2);
766
- }
767
- bool operator == (const character_pointer_range& r)const
768
- {
769
- // Not only do we check that the ranges are of equal size before
770
- // calling std::equal, but there is no other algorithm available:
771
- // not even a non-standard MS one. So forward to unchecked_equal
772
- // in the MS case.
773
- return ((p2 - p1) == (r.p2 - r.p1)) && BOOST_REGEX_DETAIL_NS::equal(p1, p2, r.p1);
774
- }
775
- };
776
- template <class charT>
777
- int get_default_class_id(const charT* p1, const charT* p2)
778
- {
779
- static const charT data[73] = {
780
- 'a', 'l', 'n', 'u', 'm',
781
- 'a', 'l', 'p', 'h', 'a',
782
- 'b', 'l', 'a', 'n', 'k',
783
- 'c', 'n', 't', 'r', 'l',
784
- 'd', 'i', 'g', 'i', 't',
785
- 'g', 'r', 'a', 'p', 'h',
786
- 'l', 'o', 'w', 'e', 'r',
787
- 'p', 'r', 'i', 'n', 't',
788
- 'p', 'u', 'n', 'c', 't',
789
- 's', 'p', 'a', 'c', 'e',
790
- 'u', 'n', 'i', 'c', 'o', 'd', 'e',
791
- 'u', 'p', 'p', 'e', 'r',
792
- 'v',
793
- 'w', 'o', 'r', 'd',
794
- 'x', 'd', 'i', 'g', 'i', 't',
795
- };
796
-
797
- static const character_pointer_range<charT> ranges[21] =
798
- {
799
- {data+0, data+5,}, // alnum
800
- {data+5, data+10,}, // alpha
801
- {data+10, data+15,}, // blank
802
- {data+15, data+20,}, // cntrl
803
- {data+20, data+21,}, // d
804
- {data+20, data+25,}, // digit
805
- {data+25, data+30,}, // graph
806
- {data+29, data+30,}, // h
807
- {data+30, data+31,}, // l
808
- {data+30, data+35,}, // lower
809
- {data+35, data+40,}, // print
810
- {data+40, data+45,}, // punct
811
- {data+45, data+46,}, // s
812
- {data+45, data+50,}, // space
813
- {data+57, data+58,}, // u
814
- {data+50, data+57,}, // unicode
815
- {data+57, data+62,}, // upper
816
- {data+62, data+63,}, // v
817
- {data+63, data+64,}, // w
818
- {data+63, data+67,}, // word
819
- {data+67, data+73,}, // xdigit
820
- };
821
- const character_pointer_range<charT>* ranges_begin = ranges;
822
- const character_pointer_range<charT>* ranges_end = ranges + (sizeof(ranges)/sizeof(ranges[0]));
823
-
824
- character_pointer_range<charT> t = { p1, p2, };
825
- const character_pointer_range<charT>* p = std::lower_bound(ranges_begin, ranges_end, t);
826
- if((p != ranges_end) && (t == *p))
827
- return static_cast<int>(p - ranges);
828
- return -1;
829
- }
830
-
831
- //
832
- // helper functions:
833
- //
834
- template <class charT>
835
- std::ptrdiff_t global_length(const charT* p)
836
- {
837
- std::ptrdiff_t n = 0;
838
- while(*p)
839
- {
840
- ++p;
841
- ++n;
842
- }
843
- return n;
844
- }
845
- template<>
846
- inline std::ptrdiff_t global_length<char>(const char* p)
847
- {
848
- return (std::strlen)(p);
849
- }
850
- #ifndef BOOST_NO_WREGEX
851
- template<>
852
- inline std::ptrdiff_t global_length<wchar_t>(const wchar_t* p)
853
- {
854
- return (std::ptrdiff_t)(std::wcslen)(p);
855
- }
856
- #endif
857
- template <class charT>
858
- inline charT BOOST_REGEX_CALL global_lower(charT c)
859
- {
860
- return c;
861
- }
862
- template <class charT>
863
- inline charT BOOST_REGEX_CALL global_upper(charT c)
864
- {
865
- return c;
866
- }
867
-
868
- inline char BOOST_REGEX_CALL do_global_lower(char c)
869
- {
870
- return static_cast<char>((std::tolower)((unsigned char)c));
871
- }
872
-
873
- inline char BOOST_REGEX_CALL do_global_upper(char c)
874
- {
875
- return static_cast<char>((std::toupper)((unsigned char)c));
876
- }
877
- #ifndef BOOST_NO_WREGEX
878
- inline wchar_t BOOST_REGEX_CALL do_global_lower(wchar_t c)
879
- {
880
- return (std::towlower)(c);
881
- }
882
-
883
- inline wchar_t BOOST_REGEX_CALL do_global_upper(wchar_t c)
884
- {
885
- return (std::towupper)(c);
886
- }
887
- #endif
888
- //
889
- // This sucks: declare template specialisations of global_lower/global_upper
890
- // that just forward to the non-template implementation functions. We do
891
- // this because there is one compiler (Compaq Tru64 C++) that doesn't seem
892
- // to differentiate between templates and non-template overloads....
893
- // what's more, the primary template, plus all overloads have to be
894
- // defined in the same translation unit (if one is inline they all must be)
895
- // otherwise the "local template instantiation" compiler option can pick
896
- // the wrong instantiation when linking:
897
- //
898
- template<> inline char BOOST_REGEX_CALL global_lower<char>(char c) { return do_global_lower(c); }
899
- template<> inline char BOOST_REGEX_CALL global_upper<char>(char c) { return do_global_upper(c); }
900
- #ifndef BOOST_NO_WREGEX
901
- template<> inline wchar_t BOOST_REGEX_CALL global_lower<wchar_t>(wchar_t c) { return do_global_lower(c); }
902
- template<> inline wchar_t BOOST_REGEX_CALL global_upper<wchar_t>(wchar_t c) { return do_global_upper(c); }
903
- #endif
904
-
905
- template <class charT>
906
- int global_value(charT c)
907
- {
908
- static const charT zero = '0';
909
- static const charT nine = '9';
910
- static const charT a = 'a';
911
- static const charT f = 'f';
912
- static const charT A = 'A';
913
- static const charT F = 'F';
914
-
915
- if(c > f) return -1;
916
- if(c >= a) return 10 + (c - a);
917
- if(c > F) return -1;
918
- if(c >= A) return 10 + (c - A);
919
- if(c > nine) return -1;
920
- if(c >= zero) return c - zero;
921
- return -1;
922
- }
923
- template <class charT, class traits>
924
- boost::intmax_t global_toi(const charT*& p1, const charT* p2, int radix, const traits& t)
925
- {
926
- (void)t; // warning suppression
927
- boost::intmax_t limit = (std::numeric_limits<boost::intmax_t>::max)() / radix;
928
- boost::intmax_t next_value = t.value(*p1, radix);
929
- if((p1 == p2) || (next_value < 0) || (next_value >= radix))
930
- return -1;
931
- boost::intmax_t result = 0;
932
- while(p1 != p2)
933
- {
934
- next_value = t.value(*p1, radix);
935
- if((next_value < 0) || (next_value >= radix))
936
- break;
937
- result *= radix;
938
- result += next_value;
939
- ++p1;
940
- if (result > limit)
941
- return -1;
942
- }
943
- return result;
944
- }
945
-
946
- template <class charT>
947
- inline typename boost::enable_if_c<(sizeof(charT) > 1), const charT*>::type get_escape_R_string()
948
- {
949
- #ifdef BOOST_MSVC
950
- # pragma warning(push)
951
- # pragma warning(disable:4309 4245)
952
- #endif
953
- static const charT e1[] = { '(', '?', '-', 'x', ':', '(', '?', '>', '\x0D', '\x0A', '?',
954
- '|', '[', '\x0A', '\x0B', '\x0C', static_cast<charT>(0x85), static_cast<charT>(0x2028),
955
- static_cast<charT>(0x2029), ']', ')', ')', '\0' };
956
- static const charT e2[] = { '(', '?', '-', 'x', ':', '(', '?', '>', '\x0D', '\x0A', '?',
957
- '|', '[', '\x0A', '\x0B', '\x0C', static_cast<charT>(0x85), ']', ')', ')', '\0' };
958
-
959
- charT c = static_cast<charT>(0x2029u);
960
- bool b = (static_cast<unsigned>(c) == 0x2029u);
961
-
962
- return (b ? e1 : e2);
963
- #ifdef BOOST_MSVC
964
- # pragma warning(pop)
965
- #endif
966
- }
967
-
968
- template <class charT>
969
- inline typename boost::disable_if_c<(sizeof(charT) > 1), const charT*>::type get_escape_R_string()
970
- {
971
- #ifdef BOOST_MSVC
972
- # pragma warning(push)
973
- # pragma warning(disable:4309)
974
- #endif
975
- static const charT e2[] = { '(', '?', '-', 'x', ':', '(', '?', '>', '\x0D', '\x0A', '?',
976
- '|', '[', '\x0A', '\x0B', '\x0C', '\x85', ']', ')', ')', '\0' };
977
- return e2;
978
- #ifdef BOOST_MSVC
979
- # pragma warning(pop)
980
- #endif
981
- }
982
-
983
- } // BOOST_REGEX_DETAIL_NS
984
- } // boost
985
-
986
- #ifdef BOOST_MSVC
987
- #pragma warning(push)
988
- #pragma warning(disable: 4103)
989
- #endif
990
- #ifdef BOOST_HAS_ABI_HEADERS
991
- # include BOOST_ABI_SUFFIX
992
- #endif
993
- #ifdef BOOST_MSVC
994
- #pragma warning(pop)
995
- #endif
996
-
997
- #endif