diff options
| author | Phoebe <925731795@qq.com> | 2019-06-27 01:36:16 +0800 |
|---|---|---|
| committer | Phil Christensen <philc@microsoft.com> | 2019-06-26 10:36:16 -0700 |
| commit | 64d8f9503120b8d51643129efd8e32341638e106 (patch) | |
| tree | d598937a1cd19a9b5ddd2c062fd0a146afa55966 | |
| parent | faf17a0f4a497eb5ac28389f3be4aa3612aa5d86 (diff) | |
| download | vcpkg-64d8f9503120b8d51643129efd8e32341638e106.tar.gz vcpkg-64d8f9503120b8d51643129efd8e32341638e106.zip | |
[Boost-variant] Upgrade to 1.70.0 (#7047)
* [Boost-variant] Upgrade to 1.70.0
* Update patch
| -rw-r--r-- | ports/boost-variant/CONTROL | 2 | ||||
| -rw-r--r-- | ports/boost-variant/fix-regression-1.70.patch | 47 | ||||
| -rw-r--r-- | ports/boost-variant/portfile.cmake | 6 |
3 files changed, 52 insertions, 3 deletions
diff --git a/ports/boost-variant/CONTROL b/ports/boost-variant/CONTROL index 395d00758..5aec459fd 100644 --- a/ports/boost-variant/CONTROL +++ b/ports/boost-variant/CONTROL @@ -1,6 +1,6 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1
Source: boost-variant
-Version: 1.69.0
+Version: 1.70.0
Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-move, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers
Homepage: https://github.com/boostorg/variant
Description: Boost variant module
diff --git a/ports/boost-variant/fix-regression-1.70.patch b/ports/boost-variant/fix-regression-1.70.patch new file mode 100644 index 000000000..79c0e2c23 --- /dev/null +++ b/ports/boost-variant/fix-regression-1.70.patch @@ -0,0 +1,47 @@ +diff --git a/include/boost/variant/detail/apply_visitor_unary.hpp b/include/boost/variant/detail/apply_visitor_unary.hpp
+index 71610cb..c3a741e 100644
+--- a/include/boost/variant/detail/apply_visitor_unary.hpp
++++ b/include/boost/variant/detail/apply_visitor_unary.hpp
+@@ -23,6 +23,7 @@
+ # include <boost/mpl/size.hpp>
+ # include <boost/utility/declval.hpp>
+ # include <boost/core/enable_if.hpp>
++# include <boost/type_traits/copy_cv_ref.hpp>
+ # include <boost/type_traits/remove_reference.hpp>
+ # include <boost/variant/detail/has_result_type.hpp>
+ #endif
+@@ -85,7 +86,7 @@ namespace detail { namespace variant {
+ // This class serves only metaprogramming purposes. none of its methods must be called at runtime!
+ template <class Visitor, class Variant>
+ struct result_multideduce1 {
+- typedef typename Variant::types types;
++ typedef typename remove_reference<Variant>::type::types types;
+ typedef typename boost::mpl::begin<types>::type begin_it;
+ typedef typename boost::mpl::advance<
+ begin_it, boost::mpl::int_<boost::mpl::size<types>::type::value - 1>
+@@ -95,14 +96,14 @@ struct result_multideduce1 {
+ struct deduce_impl {
+ typedef typename boost::mpl::next<It>::type next_t;
+ typedef typename boost::mpl::deref<It>::type value_t;
+- typedef decltype(true ? boost::declval< Visitor& >()( boost::declval< value_t >() )
++ typedef decltype(true ? boost::declval< Visitor& >()( boost::declval< copy_cv_ref_t< value_t, Variant > >() )
+ : boost::declval< typename deduce_impl<next_t>::type >()) type;
+ };
+
+ template <class Dummy>
+ struct deduce_impl<last_it, Dummy> {
+ typedef typename boost::mpl::deref<last_it>::type value_t;
+- typedef decltype(boost::declval< Visitor& >()( boost::declval< value_t >() )) type;
++ typedef decltype(boost::declval< Visitor& >()( boost::declval< copy_cv_ref_t< value_t, Variant > >() )) type;
+ };
+
+ typedef typename deduce_impl<begin_it>::type type;
+@@ -132,7 +133,7 @@ inline decltype(auto) apply_visitor(Visitor&& visitor, Visitable&& visitable,
+ boost::detail::variant::has_result_type<Visitor>
+ >::type* = 0)
+ {
+- boost::detail::variant::result_wrapper1<Visitor, typename remove_reference<Visitable>::type> cpp14_vis(::boost::forward<Visitor>(visitor));
++ boost::detail::variant::result_wrapper1<Visitor, Visitable> cpp14_vis(::boost::forward<Visitor>(visitor));
+ return ::boost::forward<Visitable>(visitable).apply_visitor(cpp14_vis);
+ }
+
diff --git a/ports/boost-variant/portfile.cmake b/ports/boost-variant/portfile.cmake index 95352b3f0..a1d8be528 100644 --- a/ports/boost-variant/portfile.cmake +++ b/ports/boost-variant/portfile.cmake @@ -5,9 +5,11 @@ include(vcpkg_common_functions) vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO boostorg/variant
- REF boost-1.69.0
- SHA512 281f2a89317603e4875d35388d941c3a174024618f2f9c255344e69d43d43509de2947e35374d8498e337326c7637805160a84f3b2b4da8811660c8429e11be0
+ REF boost-1.70.0
+ SHA512 e5a555c666bd692a5ed6e556a66d93db82707357ae5f7e62af8565e5bf56b134adefb3049c38af72f420a969308f120b8270a9e9187eac984b74573b8e9e1d75
HEAD_REF master
+ PATCHES
+ fix-regression-1.70.patch
)
include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake)
|
