passenger 6.0.0 → 6.0.5

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 (454) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +148 -18
  3. data/CONTRIBUTORS +6 -0
  4. data/bin/passenger-install-nginx-module +1 -1
  5. data/bin/passenger-status +15 -0
  6. data/build/misc.rb +3 -1
  7. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +56 -3
  8. data/dev/copy_boost_headers +1 -0
  9. data/package.json +1 -1
  10. data/passenger.gemspec +1 -1
  11. data/resources/templates/error_renderer/with_details/src/bootstrap/bootstrap.css +0 -0
  12. data/resources/templates/error_renderer/with_details/src/bootstrap/bootstrap.js +0 -0
  13. data/resources/templates/error_renderer/with_details/src/bootstrap/config.json +0 -0
  14. data/resources/templates/standalone/http.erb +2 -0
  15. data/resources/templates/standalone/server.erb +1 -0
  16. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
  17. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -0
  18. data/src/agent/Core/ApplicationPool/Options.h +10 -0
  19. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +1 -1
  20. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +1 -1
  21. data/src/agent/Core/Config.h +13 -1
  22. data/src/agent/Core/Controller.h +1 -0
  23. data/src/agent/Core/Controller/Config.h +4 -1
  24. data/src/agent/Core/Controller/ForwardResponse.cpp +13 -0
  25. data/src/agent/Core/Controller/InitRequest.cpp +3 -0
  26. data/src/agent/Core/Controller/InitializationAndShutdown.cpp +1 -0
  27. data/src/agent/Core/CoreMain.cpp +2 -1
  28. data/src/agent/Core/OptionParser.h +3 -0
  29. data/src/agent/Core/SpawningKit/Context.h +1 -0
  30. data/src/agent/Core/SpawningKit/Handshake/Perform.h +1 -0
  31. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
  32. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +5 -2
  33. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +2 -0
  34. data/src/agent/Watchdog/Config.h +14 -1
  35. data/src/agent/Watchdog/WatchdogMain.cpp +7 -0
  36. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +10 -0
  37. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +10 -0
  38. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +30 -0
  39. data/src/apache2_module/Hooks.cpp +6 -0
  40. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +20 -0
  41. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +24 -0
  42. data/src/cxx_supportlib/Constants.h +2 -1
  43. data/src/cxx_supportlib/LoggingKit/Config.h +2 -0
  44. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +15 -9
  45. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
  46. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +57 -2
  47. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +11 -7
  48. data/src/cxx_supportlib/oxt/system_calls.cpp +10 -10
  49. data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/finder.hpp +0 -4
  50. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +46 -37
  51. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +16 -15
  52. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +45 -26
  53. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +33 -0
  54. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +1 -1
  55. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +38 -14
  56. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +2 -0
  57. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +1 -1
  58. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +3 -1
  59. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +0 -1
  60. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +6 -1
  61. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -4
  62. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +4 -4
  63. data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +3 -3
  64. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +4 -4
  65. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +4 -4
  66. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +8 -6
  67. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +17 -0
  68. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +50 -5
  69. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +2 -1
  70. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +1 -1
  71. data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +3 -2
  72. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  73. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +4 -3
  74. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +5 -3
  75. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +13 -12
  76. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +10 -10
  77. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/process_cpu_clocks.hpp +34 -34
  78. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/thread_clock.hpp +4 -4
  79. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/chrono.hpp +8 -8
  80. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/process_cpu_clocks.hpp +27 -27
  81. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/thread_clock.hpp +4 -4
  82. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/system.hpp +5 -4
  83. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +1 -1
  84. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer.hpp +3 -3
  85. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/allocators.hpp +89 -0
  86. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/base.hpp +83 -74
  87. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +21 -33
  88. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/space_optimized.hpp +5 -5
  89. data/src/cxx_supportlib/vendor-modified/boost/concept/assert.hpp +1 -1
  90. data/src/cxx_supportlib/vendor-modified/boost/concept/detail/general.hpp +3 -3
  91. data/src/cxx_supportlib/vendor-modified/boost/concept/detail/has_constraints.hpp +3 -3
  92. data/src/cxx_supportlib/vendor-modified/boost/concept/usage.hpp +1 -1
  93. data/src/cxx_supportlib/vendor-modified/boost/concept_check.hpp +19 -19
  94. data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +8 -0
  95. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +5 -2
  96. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +5 -1
  97. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +6 -2
  98. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/comeau.hpp +1 -1
  99. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -0
  100. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +368 -52
  101. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -1
  102. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +6 -3
  103. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/greenhills.hpp +1 -1
  105. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +1 -1
  106. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +6 -1
  107. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/kai.hpp +1 -1
  108. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -1
  109. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -1
  110. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -3
  111. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +3 -0
  112. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +3 -0
  113. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -1
  114. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +9 -4
  115. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
  116. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +1 -0
  117. data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_compiler_config.hpp +1 -2
  118. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +13 -0
  119. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +2 -2
  120. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +14 -4
  121. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +4 -4
  122. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +262 -2
  123. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +4 -3
  124. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +1 -1
  125. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +7 -0
  126. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +22 -19
  127. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +833 -459
  128. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +24 -6
  129. data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +2 -1
  130. data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +61 -5
  131. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +33 -8
  132. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +132 -41
  133. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +16 -0
  134. data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +54 -0
  135. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +58 -0
  136. data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +28 -23
  137. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +167 -115
  138. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +55 -0
  139. data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +3 -0
  140. data/src/cxx_supportlib/vendor-modified/boost/container/detail/thread_mutex.hpp +181 -0
  141. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +167 -29
  142. data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +2 -0
  143. data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +1 -1
  144. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +18 -0
  145. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +389 -3
  146. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +262 -0
  147. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +52 -8
  148. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +364 -0
  149. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +4 -2
  150. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
  151. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/synchronized_pool_resource.hpp +3 -2
  152. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +286 -6
  153. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +56 -8
  154. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +43 -6
  155. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +100 -31
  156. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +2 -1
  157. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +126 -69
  158. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +75 -51
  159. data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +136 -0
  160. data/src/cxx_supportlib/vendor-modified/boost/core/exchange.hpp +49 -0
  161. data/src/cxx_supportlib/vendor-modified/boost/core/explicit_operator_bool.hpp +9 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +101 -130
  163. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +2 -2
  164. data/src/cxx_supportlib/vendor-modified/boost/core/noncopyable.hpp +16 -1
  165. data/src/cxx_supportlib/vendor-modified/boost/core/quick_exit.hpp +59 -0
  166. data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +2 -1
  167. data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +9 -2
  168. data/src/cxx_supportlib/vendor-modified/boost/core/typeinfo.hpp +26 -10
  169. data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +5 -0
  170. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +3 -3
  171. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +1 -1
  172. data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +1 -1
  173. data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +38 -47
  174. data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +5 -5
  175. data/src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp +7 -7
  176. data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +62 -58
  177. data/src/cxx_supportlib/vendor-modified/boost/function.hpp +1 -1
  178. data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +29 -29
  179. data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +38 -40
  180. data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +4 -4
  181. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +44 -44
  182. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +39 -39
  183. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +15 -15
  184. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +7 -7
  185. data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
  186. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +14 -14
  187. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +9 -9
  188. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +7 -7
  189. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +1 -1
  190. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +2 -2
  191. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +2 -2
  192. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +6 -6
  193. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
  194. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +1 -1
  195. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +1 -1
  196. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +3 -3
  198. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +33 -14
  199. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +12 -12
  200. data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +4 -4
  201. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +3 -0
  202. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +39 -39
  203. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +61 -61
  204. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +4 -4
  205. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +66 -66
  206. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +54 -54
  207. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +6 -2
  208. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +3 -3
  209. data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +1 -1
  210. data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +65 -0
  211. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
  212. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
  213. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +23 -23
  214. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +4 -4
  215. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +13 -13
  216. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
  217. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +5 -4
  218. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
  219. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +5 -5
  220. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +5 -2
  221. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +18 -13
  222. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cregex.cpp +4 -4
  223. data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +16 -5
  224. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/future.cpp +1 -1
  225. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +14 -8
  226. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/tss_null.cpp +2 -2
  227. data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +13 -13
  228. data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +27 -0
  229. data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +1 -1
  230. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +29 -6
  231. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +12 -3
  232. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +1 -1
  233. data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +1 -1
  234. data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +1 -1
  235. data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +8 -8
  236. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -0
  237. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +3 -3
  238. data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +23 -3
  239. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +9 -3
  240. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +10 -11
  241. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +20 -1
  242. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
  243. data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +211 -101
  244. data/src/cxx_supportlib/vendor-modified/boost/parameter/python.hpp +5 -6
  245. data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +119 -25
  246. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture.h +1 -0
  247. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +5 -0
  248. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ptx.h +44 -0
  249. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler.h +1 -0
  250. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/compaq.h +1 -1
  251. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/nvcc.h +73 -0
  252. data/src/cxx_supportlib/vendor-modified/boost/predef/detail/endian_compat.h +3 -1
  253. data/src/cxx_supportlib/vendor-modified/boost/predef/language.h +1 -0
  254. data/src/cxx_supportlib/vendor-modified/boost/predef/language/cuda.h +52 -0
  255. data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
  256. data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +6 -1
  257. data/src/cxx_supportlib/vendor-modified/boost/predef/other/endian.h +1 -2
  258. data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
  259. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +17 -8
  260. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/stringize.hpp +4 -0
  261. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/wstringize.hpp +4 -0
  262. data/src/cxx_supportlib/vendor-modified/boost/random/detail/gray_coded_qrng.hpp +166 -0
  263. data/src/cxx_supportlib/vendor-modified/boost/random/detail/niederreiter_base2_table.hpp +513 -0
  264. data/src/cxx_supportlib/vendor-modified/boost/random/detail/qrng_base.hpp +291 -0
  265. data/src/cxx_supportlib/vendor-modified/boost/random/detail/sobol_table.hpp +4106 -0
  266. data/src/cxx_supportlib/vendor-modified/boost/random/faure.hpp +367 -0
  267. data/src/cxx_supportlib/vendor-modified/boost/random/niederreiter_base2.hpp +360 -0
  268. data/src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp +237 -0
  269. data/src/cxx_supportlib/vendor-modified/boost/range/as_literal.hpp +43 -0
  270. data/src/cxx_supportlib/vendor-modified/boost/range/begin.hpp +13 -5
  271. data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +1 -1
  272. data/src/cxx_supportlib/vendor-modified/boost/range/detail/common.hpp +1 -3
  273. data/src/cxx_supportlib/vendor-modified/boost/range/detail/implementation_help.hpp +2 -2
  274. data/src/cxx_supportlib/vendor-modified/boost/range/distance.hpp +11 -5
  275. data/src/cxx_supportlib/vendor-modified/boost/range/end.hpp +14 -6
  276. data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +3 -3
  277. data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +6 -2
  278. data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +55 -37
  279. data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +3 -2
  280. data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +11 -1
  281. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +7 -1
  282. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +3 -1
  283. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +5 -2
  284. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +0 -3
  285. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +15 -4
  286. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +1 -2
  287. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +12 -3
  288. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +7 -2
  289. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +7 -3
  290. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +6 -2
  291. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -5
  292. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -8
  293. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +3 -3
  294. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +3 -1
  295. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -8
  296. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +12 -11
  297. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -4
  298. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +1 -9
  299. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +2 -10
  300. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +2 -0
  301. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +60 -115
  302. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +3 -3
  303. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +2 -1
  304. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +2 -1
  305. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +2 -1
  306. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +2 -1
  307. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp +2 -1
  308. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +2 -1
  309. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +2 -1
  310. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +2 -1
  311. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +2 -1
  312. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +2 -1
  313. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +2 -1
  314. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +2 -1
  315. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +2 -1
  316. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_solaris.hpp +2 -1
  317. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +2 -1
  318. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +2 -1
  319. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +2 -1
  320. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +2 -1
  321. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +3 -3
  322. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +14 -8
  323. data/src/cxx_supportlib/vendor-modified/boost/system/config.hpp +4 -24
  324. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +57 -0
  325. data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +101 -0
  326. data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_interoperability.hpp +141 -0
  327. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_posix.hpp +132 -0
  328. data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +775 -588
  329. data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +4 -4
  330. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +6 -0
  331. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +13 -6
  332. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/nullary_function.hpp +8 -3
  333. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +3 -1
  334. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread_safety.hpp +160 -0
  335. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/tss_hooks.hpp +2 -2
  336. data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +3 -3
  337. data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +24 -1
  338. data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +10 -1
  339. data/src/cxx_supportlib/vendor-modified/boost/thread/lock_guard.hpp +4 -4
  340. data/src/cxx_supportlib/vendor-modified/boost/thread/lockable_traits.hpp +31 -0
  341. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +2 -2
  342. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +2 -2
  343. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +8 -53
  344. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +73 -4
  345. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +6 -6
  346. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +14 -9
  347. data/src/cxx_supportlib/vendor-modified/boost/thread/xtime.hpp +6 -6
  348. data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +9 -8
  349. data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +1 -0
  350. data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +21 -19
  351. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +3 -1
  352. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +9 -0
  353. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/detector.hpp +1 -1
  354. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +55 -0
  355. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +72 -0
  356. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_03.hpp +108 -0
  357. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_11.hpp +501 -0
  358. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_msvc10_fix.hpp +30 -0
  359. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_likely_lambda.hpp +2 -2
  360. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_03.hpp +117 -0
  361. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +557 -0
  362. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_rvalue_reference_msvc10_fix.hpp +43 -0
  363. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected.hpp +1 -1
  364. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected_or.hpp +1 -1
  365. data/src/cxx_supportlib/vendor-modified/boost/type_traits/enable_if.hpp +37 -0
  366. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_dereference.hpp +344 -0
  367. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +5 -0
  368. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +5 -0
  369. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +5 -0
  370. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_decrement.hpp +21 -0
  371. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_increment.hpp +21 -0
  372. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_decrement.hpp +21 -0
  373. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_increment.hpp +22 -0
  374. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +1 -1
  375. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +2 -1
  376. data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +5 -15
  377. data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +16 -6
  378. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +3 -1
  379. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_assignable.hpp +3 -4
  380. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_constructible.hpp +4 -6
  381. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected.hpp +1 -1
  382. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_convertible.hpp +1 -1
  383. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_exact.hpp +1 -1
  384. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_final.hpp +1 -1
  385. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_function.hpp +4 -79
  386. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_function_pointer.hpp +3 -97
  387. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_noncopyable.hpp +39 -0
  388. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +2 -2
  389. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +2 -2
  390. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +4 -0
  391. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +104 -63
  392. data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_void.hpp +1 -1
  393. data/src/cxx_supportlib/vendor-modified/boost/type_traits/nonesuch.hpp +1 -1
  394. data/src/cxx_supportlib/vendor-modified/boost/typeof/constant.hpp +26 -0
  395. data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +4 -4
  396. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -3
  397. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +1 -1
  398. data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +4 -5
  399. data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +5 -5
  400. data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +9 -9
  401. data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +3 -3
  402. data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +2 -2
  403. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +6 -6
  404. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +1 -1
  405. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +4 -4
  406. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +2 -2
  407. data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +2 -2
  408. data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +16 -16
  409. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +5 -5
  410. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +201 -201
  411. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +301 -301
  412. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +401 -401
  413. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +101 -101
  414. data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +3 -0
  415. data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +2 -0
  416. data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +26 -6
  417. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  418. data/src/helper-scripts/prespawn +1 -0
  419. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +40 -0
  420. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +26 -0
  421. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +48 -0
  422. data/src/nginx_module/Configuration.c +9 -5
  423. data/src/nginx_module/ContentHandler.c +5 -1
  424. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +15 -0
  425. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +15 -0
  426. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +28 -0
  427. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +6 -0
  428. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +11 -0
  429. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +11 -0
  430. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +23 -0
  431. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +8 -0
  432. data/src/nginx_module/ngx_http_passenger_module.c +2 -0
  433. data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/logger.js +0 -0
  434. data/src/ruby_native_extension/extconf.rb +7 -0
  435. data/src/ruby_supportlib/phusion_passenger.rb +7 -7
  436. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +8 -0
  437. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +23 -0
  438. data/src/ruby_supportlib/phusion_passenger/constants.rb +1 -0
  439. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +1 -3
  440. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +37 -0
  441. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +1 -1
  442. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +10 -0
  443. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
  444. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +5 -0
  445. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +11 -0
  446. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +3 -0
  447. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +1 -1
  448. data/src/ruby_supportlib/phusion_passenger/utils/tee_input.rb +6 -0
  449. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +15 -11
  450. metadata +48 -7
  451. data/src/cxx_supportlib/vendor-modified/boost/call_traits.hpp +0 -20
  452. data/src/cxx_supportlib/vendor-modified/boost/detail/call_traits.hpp +0 -172
  453. data/src/cxx_supportlib/vendor-modified/boost/detail/no_exceptions_support.hpp +0 -17
  454. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +0 -496
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -30,9 +30,9 @@
30
30
  #include <cstddef>
31
31
  #include <string>
32
32
  #include <boost/limits.hpp>
33
- #include <boost/mpl/bool.hpp>
34
- #include <boost/mpl/identity.hpp>
35
- #include <boost/mpl/if.hpp>
33
+ #include <boost/type_traits/integral_constant.hpp>
34
+ #include <boost/type_traits/type_identity.hpp>
35
+ #include <boost/type_traits/conditional.hpp>
36
36
  #include <boost/type_traits/is_integral.hpp>
37
37
  #include <boost/type_traits/is_float.hpp>
38
38
  #include <boost/type_traits/has_left_shift.hpp>
@@ -90,35 +90,35 @@ namespace boost {
90
90
  // Returns one of char, wchar_t, char16_t, char32_t or deduce_character_type_later<T> types
91
91
  // Executed on Stage 1 (See deduce_source_char<T> and deduce_target_char<T>)
92
92
  template < typename Type >
93
- struct stream_char_common: public boost::mpl::if_c<
93
+ struct stream_char_common: public boost::conditional<
94
94
  boost::detail::is_character< Type >::value,
95
95
  Type,
96
96
  boost::detail::deduce_character_type_later< Type >
97
97
  > {};
98
98
 
99
99
  template < typename Char >
100
- struct stream_char_common< Char* >: public boost::mpl::if_c<
100
+ struct stream_char_common< Char* >: public boost::conditional<
101
101
  boost::detail::is_character< Char >::value,
102
102
  Char,
103
103
  boost::detail::deduce_character_type_later< Char* >
104
104
  > {};
105
105
 
106
106
  template < typename Char >
107
- struct stream_char_common< const Char* >: public boost::mpl::if_c<
107
+ struct stream_char_common< const Char* >: public boost::conditional<
108
108
  boost::detail::is_character< Char >::value,
109
109
  Char,
110
110
  boost::detail::deduce_character_type_later< const Char* >
111
111
  > {};
112
112
 
113
113
  template < typename Char >
114
- struct stream_char_common< boost::iterator_range< Char* > >: public boost::mpl::if_c<
114
+ struct stream_char_common< boost::iterator_range< Char* > >: public boost::conditional<
115
115
  boost::detail::is_character< Char >::value,
116
116
  Char,
117
117
  boost::detail::deduce_character_type_later< boost::iterator_range< Char* > >
118
118
  > {};
119
119
 
120
120
  template < typename Char >
121
- struct stream_char_common< boost::iterator_range< const Char* > >: public boost::mpl::if_c<
121
+ struct stream_char_common< boost::iterator_range< const Char* > >: public boost::conditional<
122
122
  boost::detail::is_character< Char >::value,
123
123
  Char,
124
124
  boost::detail::deduce_character_type_later< boost::iterator_range< const Char* > >
@@ -137,14 +137,14 @@ namespace boost {
137
137
  };
138
138
 
139
139
  template < typename Char, std::size_t N >
140
- struct stream_char_common< boost::array< Char, N > >: public boost::mpl::if_c<
140
+ struct stream_char_common< boost::array< Char, N > >: public boost::conditional<
141
141
  boost::detail::is_character< Char >::value,
142
142
  Char,
143
143
  boost::detail::deduce_character_type_later< boost::array< Char, N > >
144
144
  > {};
145
145
 
146
146
  template < typename Char, std::size_t N >
147
- struct stream_char_common< boost::array< const Char, N > >: public boost::mpl::if_c<
147
+ struct stream_char_common< boost::array< const Char, N > >: public boost::conditional<
148
148
  boost::detail::is_character< Char >::value,
149
149
  Char,
150
150
  boost::detail::deduce_character_type_later< boost::array< const Char, N > >
@@ -152,14 +152,14 @@ namespace boost {
152
152
 
153
153
  #ifndef BOOST_NO_CXX11_HDR_ARRAY
154
154
  template < typename Char, std::size_t N >
155
- struct stream_char_common< std::array<Char, N > >: public boost::mpl::if_c<
155
+ struct stream_char_common< std::array<Char, N > >: public boost::conditional<
156
156
  boost::detail::is_character< Char >::value,
157
157
  Char,
158
158
  boost::detail::deduce_character_type_later< std::array< Char, N > >
159
159
  > {};
160
160
 
161
161
  template < typename Char, std::size_t N >
162
- struct stream_char_common< std::array< const Char, N > >: public boost::mpl::if_c<
162
+ struct stream_char_common< std::array< const Char, N > >: public boost::conditional<
163
163
  boost::detail::is_character< Char >::value,
164
164
  Char,
165
165
  boost::detail::deduce_character_type_later< std::array< const Char, N > >
@@ -167,8 +167,8 @@ namespace boost {
167
167
  #endif
168
168
 
169
169
  #ifdef BOOST_HAS_INT128
170
- template <> struct stream_char_common< boost::int128_type >: public boost::mpl::identity< char > {};
171
- template <> struct stream_char_common< boost::uint128_type >: public boost::mpl::identity< char > {};
170
+ template <> struct stream_char_common< boost::int128_type >: public boost::type_identity< char > {};
171
+ template <> struct stream_char_common< boost::uint128_type >: public boost::type_identity< char > {};
172
172
  #endif
173
173
 
174
174
  #if !defined(BOOST_LCAST_NO_WCHAR_T) && defined(BOOST_NO_INTRINSIC_WCHAR_T)
@@ -203,7 +203,7 @@ namespace boost {
203
203
  "Source type is not std::ostream`able and std::wostream`s are not supported by your STL implementation");
204
204
  typedef char type;
205
205
  #else
206
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
206
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
207
207
  result_t::value, char, wchar_t
208
208
  >::type type;
209
209
 
@@ -236,7 +236,7 @@ namespace boost {
236
236
  "Target type is not std::istream`able and std::wistream`s are not supported by your STL implementation");
237
237
  typedef char type;
238
238
  #else
239
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
239
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
240
240
  result_t::value, char, wchar_t
241
241
  >::type type;
242
242
 
@@ -421,21 +421,21 @@ namespace boost {
421
421
  "Your compiler does not have full support for char32_t" );
422
422
  #endif
423
423
 
424
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
424
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
425
425
  boost::detail::extract_char_traits<char_type, Target>::value,
426
426
  BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits<char_type, Target>,
427
427
  BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits<char_type, no_cv_src>
428
428
  >::type::trait_t traits;
429
429
 
430
- typedef boost::mpl::bool_
431
- <
432
- boost::is_same<char, src_char_t>::value && // source is not a wide character based type
430
+ typedef boost::integral_constant<
431
+ bool,
432
+ boost::is_same<char, src_char_t>::value && // source is not a wide character based type
433
433
  (sizeof(char) != sizeof(target_char_t)) && // target type is based on wide character
434
434
  (!(boost::detail::is_character<no_cv_src>::value))
435
435
  > is_string_widening_required_t;
436
436
 
437
- typedef boost::mpl::bool_
438
- <
437
+ typedef boost::integral_constant<
438
+ bool,
439
439
  !(boost::is_integral<no_cv_src>::value ||
440
440
  boost::detail::is_character<
441
441
  BOOST_DEDUCED_TYPENAME deduce_src_char_metafunc::stage1_type // if we did not get character type at stage1
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2016.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -33,7 +33,7 @@
33
33
  #include <cstring>
34
34
  #include <cstdio>
35
35
  #include <boost/limits.hpp>
36
- #include <boost/mpl/if.hpp>
36
+ #include <boost/type_traits/conditional.hpp>
37
37
  #include <boost/type_traits/is_pointer.hpp>
38
38
  #include <boost/static_assert.hpp>
39
39
  #include <boost/detail/workaround.hpp>
@@ -137,13 +137,13 @@ namespace boost {
137
137
  , std::size_t CharacterBufferSize
138
138
  >
139
139
  class lexical_istream_limited_src: boost::noncopyable {
140
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
140
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
141
141
  RequiresStringbuffer,
142
142
  BOOST_DEDUCED_TYPENAME out_stream_helper_trait<CharT, Traits>::out_stream_t,
143
143
  do_not_construct_out_stream_t
144
144
  >::type deduced_out_stream_t;
145
145
 
146
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
146
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
147
147
  RequiresStringbuffer,
148
148
  BOOST_DEDUCED_TYPENAME out_stream_helper_trait<CharT, Traits>::stringbuffer_t,
149
149
  do_not_construct_out_buffer_t
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2016.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -24,9 +24,8 @@
24
24
  #endif
25
25
 
26
26
  #include <boost/limits.hpp>
27
- #include <boost/mpl/eval_if.hpp>
28
- #include <boost/mpl/identity.hpp>
29
- #include <boost/mpl/if.hpp>
27
+ #include <boost/type_traits/type_identity.hpp>
28
+ #include <boost/type_traits/conditional.hpp>
30
29
  #include <boost/type_traits/make_unsigned.hpp>
31
30
  #include <boost/type_traits/is_signed.hpp>
32
31
  #include <boost/type_traits/is_integral.hpp>
@@ -43,8 +42,8 @@ struct detect_precision_loss
43
42
  {
44
43
  typedef Source source_type;
45
44
  typedef boost::numeric::Trunc<Source> Rounder;
46
- typedef BOOST_DEDUCED_TYPENAME mpl::if_<
47
- boost::is_arithmetic<Source>, Source, Source const&
45
+ typedef BOOST_DEDUCED_TYPENAME conditional<
46
+ boost::is_arithmetic<Source>::value, Source, Source const&
48
47
  >::type argument_type ;
49
48
 
50
49
  static inline source_type nearbyint(argument_type s, bool& is_ok) BOOST_NOEXCEPT {
@@ -66,8 +65,8 @@ template
66
65
  struct fake_precision_loss: public Base
67
66
  {
68
67
  typedef Source source_type ;
69
- typedef BOOST_DEDUCED_TYPENAME mpl::if_<
70
- boost::is_arithmetic<Source>, Source, Source const&
68
+ typedef BOOST_DEDUCED_TYPENAME conditional<
69
+ boost::is_arithmetic<Source>::value, Source, Source const&
71
70
  >::type argument_type ;
72
71
 
73
72
  static inline source_type nearbyint(argument_type s, bool& /*is_ok*/) BOOST_NOEXCEPT {
@@ -92,7 +91,7 @@ inline bool noexcept_numeric_convert(const Source& arg, Target& result) BOOST_NO
92
91
  detect_precision_loss<Source >
93
92
  > converter_orig_t;
94
93
 
95
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
94
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
96
95
  boost::is_base_of< detect_precision_loss<Source >, converter_orig_t >::value,
97
96
  converter_orig_t,
98
97
  fake_precision_loss<converter_orig_t, Source>
@@ -115,11 +114,12 @@ template
115
114
  struct lexical_cast_dynamic_num_ignoring_minus
116
115
  {
117
116
  static inline bool try_convert(const Source &arg, Target& result) BOOST_NOEXCEPT {
118
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::eval_if_c<
117
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
119
118
  boost::is_float<Source>::value,
120
- boost::mpl::identity<Source>,
119
+ boost::type_identity<Source>,
121
120
  boost::make_unsigned<Source>
122
- >::type usource_t;
121
+ >::type usource_lazy_t;
122
+ typedef BOOST_DEDUCED_TYPENAME usource_lazy_t::type usource_t;
123
123
 
124
124
  if (arg < 0) {
125
125
  const bool res = noexcept_numeric_convert<Target, usource_t>(0u - arg, result);
@@ -153,7 +153,7 @@ template
153
153
  struct dynamic_num_converter_impl
154
154
  {
155
155
  static inline bool try_convert(const Source &arg, Target& result) BOOST_NOEXCEPT {
156
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
156
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
157
157
  boost::is_unsigned<Target>::value &&
158
158
  (boost::is_signed<Source>::value || boost::is_float<Source>::value) &&
159
159
  !(boost::is_same<Source, bool>::value) &&
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -23,7 +23,7 @@
23
23
  # pragma once
24
24
  #endif
25
25
 
26
- #include <boost/mpl/bool.hpp>
26
+ #include <boost/type_traits/integral_constant.hpp>
27
27
  #include <boost/type_traits/is_same.hpp>
28
28
 
29
29
  namespace boost {
@@ -34,8 +34,9 @@ namespace boost {
34
34
  template < typename T >
35
35
  struct is_character
36
36
  {
37
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::bool_<
38
- boost::is_same< T, char >::value ||
37
+ typedef BOOST_DEDUCED_TYPENAME boost::integral_constant<
38
+ bool,
39
+ boost::is_same< T, char >::value ||
39
40
  #if !defined(BOOST_NO_STRINGSTREAM) && !defined(BOOST_NO_STD_WSTRING)
40
41
  boost::is_same< T, wchar_t >::value ||
41
42
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -29,7 +29,7 @@
29
29
  #include <cstring>
30
30
  #include <cstdio>
31
31
  #include <boost/limits.hpp>
32
- #include <boost/mpl/if.hpp>
32
+ #include <boost/type_traits/conditional.hpp>
33
33
  #include <boost/static_assert.hpp>
34
34
  #include <boost/detail/workaround.hpp>
35
35
 
@@ -71,9 +71,9 @@ namespace boost
71
71
  template <class Traits, class T, class CharT>
72
72
  class lcast_put_unsigned: boost::noncopyable {
73
73
  typedef BOOST_DEDUCED_TYPENAME Traits::int_type int_type;
74
- BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
75
- (sizeof(int_type) > sizeof(T))
76
- , int_type
74
+ BOOST_DEDUCED_TYPENAME boost::conditional<
75
+ (sizeof(unsigned) > sizeof(T))
76
+ , unsigned
77
77
  , T
78
78
  >::type m_value;
79
79
  CharT* m_finish;
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2014.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -23,11 +23,14 @@
23
23
  # pragma once
24
24
  #endif
25
25
 
26
+
27
+ #include <boost/type_traits/conditional.hpp>
28
+
26
29
  namespace boost { namespace detail {
27
30
 
28
31
  template <typename TargetChar, typename SourceChar>
29
32
  struct widest_char {
30
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
33
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
31
34
  (sizeof(TargetChar) > sizeof(SourceChar))
32
35
  , TargetChar
33
36
  , SourceChar
@@ -1,6 +1,6 @@
1
1
  // Copyright Kevlin Henney, 2000-2005.
2
2
  // Copyright Alexander Nasonov, 2006-2010.
3
- // Copyright Antony Polukhin, 2011-2016.
3
+ // Copyright Antony Polukhin, 2011-2018.
4
4
  //
5
5
  // Distributed under the Boost Software License, Version 1.0. (See
6
6
  // accompanying file LICENSE_1_0.txt or copy at
@@ -28,12 +28,14 @@
28
28
  (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)))
29
29
  #pragma GCC diagnostic push
30
30
  #pragma GCC diagnostic ignored "-Wuninitialized"
31
+ #pragma GCC diagnostic ignored "-Wsign-conversion"
31
32
  #endif
32
33
 
34
+
33
35
  #include <string>
34
- #include <boost/mpl/bool.hpp>
35
- #include <boost/mpl/identity.hpp>
36
- #include <boost/mpl/if.hpp>
36
+ #include <boost/type_traits/is_integral.hpp>
37
+ #include <boost/type_traits/type_identity.hpp>
38
+ #include <boost/type_traits/conditional.hpp>
37
39
  #include <boost/type_traits/is_same.hpp>
38
40
  #include <boost/type_traits/is_arithmetic.hpp>
39
41
 
@@ -72,8 +74,9 @@ namespace boost {
72
74
  template<typename Target, typename Source>
73
75
  struct is_arithmetic_and_not_xchars
74
76
  {
75
- typedef boost::mpl::bool_<
76
- !(boost::detail::is_character<Target>::value) &&
77
+ typedef boost::integral_constant<
78
+ bool,
79
+ !(boost::detail::is_character<Target>::value) &&
77
80
  !(boost::detail::is_character<Source>::value) &&
78
81
  boost::is_arithmetic<Source>::value &&
79
82
  boost::is_arithmetic<Target>::value
@@ -91,8 +94,9 @@ namespace boost {
91
94
  template<typename Target, typename Source>
92
95
  struct is_xchar_to_xchar
93
96
  {
94
- typedef boost::mpl::bool_<
95
- sizeof(Source) == sizeof(Target) &&
97
+ typedef boost::integral_constant<
98
+ bool,
99
+ sizeof(Source) == sizeof(Target) &&
96
100
  sizeof(Source) == sizeof(char) &&
97
101
  boost::detail::is_character<Target>::value &&
98
102
  boost::detail::is_character<Source>::value
@@ -162,7 +166,8 @@ namespace boost {
162
166
  {
163
167
  typedef BOOST_DEDUCED_TYPENAME boost::detail::array_to_pointer_decay<Source>::type src;
164
168
 
165
- typedef boost::mpl::bool_<
169
+ typedef boost::integral_constant<
170
+ bool,
166
171
  boost::detail::is_xchar_to_xchar<Target, src >::value ||
167
172
  boost::detail::is_char_array_to_stdstring<Target, src >::value ||
168
173
  boost::detail::is_char_array_to_booststring<Target, src >::value ||
@@ -181,11 +186,11 @@ namespace boost {
181
186
 
182
187
  // We do evaluate second `if_` lazily to avoid unnecessary instantiations
183
188
  // of `shall_we_copy_with_dynamic_check_t` and improve compilation times.
184
- typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c<
189
+ typedef BOOST_DEDUCED_TYPENAME boost::conditional<
185
190
  shall_we_copy_t::value,
186
- boost::mpl::identity<boost::detail::copy_converter_impl<Target, src > >,
187
- boost::mpl::if_<
188
- shall_we_copy_with_dynamic_check_t,
191
+ boost::type_identity<boost::detail::copy_converter_impl<Target, src > >,
192
+ boost::conditional<
193
+ shall_we_copy_with_dynamic_check_t::value,
189
194
  boost::detail::dynamic_num_converter_impl<Target, src >,
190
195
  boost::detail::lexical_converter_impl<Target, src >
191
196
  >
@@ -491,8 +491,8 @@ std::size_t RegEx::Position(int i)const
491
491
  {
492
492
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pc:
493
493
  return pdata->m[i].matched ? pdata->m[i].first - pdata->pbase : RegEx::npos;
494
- #ifndef BOOST_REGEX_NO_FILEITER
495
494
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pf:
495
+ #ifndef BOOST_REGEX_NO_FILEITER
496
496
  return pdata->fm[i].matched ? pdata->fm[i].first - pdata->fbase : RegEx::npos;
497
497
  #endif
498
498
  case BOOST_REGEX_DETAIL_NS::RegExData::type_copy:
@@ -518,8 +518,8 @@ std::size_t RegEx::Length(int i)const
518
518
  {
519
519
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pc:
520
520
  return pdata->m[i].matched ? pdata->m[i].second - pdata->m[i].first : RegEx::npos;
521
- #ifndef BOOST_REGEX_NO_FILEITER
522
521
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pf:
522
+ #ifndef BOOST_REGEX_NO_FILEITER
523
523
  return pdata->fm[i].matched ? pdata->fm[i].second - pdata->fm[i].first : RegEx::npos;
524
524
  #endif
525
525
  case BOOST_REGEX_DETAIL_NS::RegExData::type_copy:
@@ -539,10 +539,10 @@ bool RegEx::Matched(int i)const
539
539
  {
540
540
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pc:
541
541
  return pdata->m[i].matched;
542
- #ifndef BOOST_REGEX_NO_FILEITER
543
542
  case BOOST_REGEX_DETAIL_NS::RegExData::type_pf:
543
+ #ifndef BOOST_REGEX_NO_FILEITER
544
544
  return pdata->fm[i].matched;
545
- #endif
545
+ #endif
546
546
  case BOOST_REGEX_DETAIL_NS::RegExData::type_copy:
547
547
  {
548
548
  std::map<int, std::string, std::less<int> >::iterator pos = pdata->strings.find(i);