diff --git a/patched/variant/Jamfile.patch b/patched/variant/Jamfile.patch new file mode 100644 index 0000000..4808b70 --- /dev/null +++ b/patched/variant/Jamfile.patch @@ -0,0 +1,12 @@ +Index: . +=================================================================== +--- . (revision 86532) ++++ . (working copy) +@@ -53,6 +53,7 @@ + clang:-fno-exceptions + : variant_noexcept_test + ] ++ [ run recursive_variant_test.cpp : : : off : variant_nortti_test ] + [ run variant_swap_test.cpp ] + ; + diff --git a/patched/variant/variant.patch b/patched/variant/variant.patch new file mode 100644 index 0000000..0a96b94 --- /dev/null +++ b/patched/variant/variant.patch @@ -0,0 +1,57 @@ +Index: . +=================================================================== +--- . (revision 86532) ++++ . (working copy) +@@ -18,9 +18,7 @@ + #include // for std::size_t + #include // for placement new + +-#if !defined(BOOST_NO_TYPEID) +-#include // for typeid, std::type_info +-#endif // BOOST_NO_TYPEID ++#include "boost/type_index/type_info.hpp" + + #include "boost/variant/detail/config.hpp" + #include "boost/mpl/aux_/value_wknd.hpp" +@@ -830,23 +828,19 @@ + // Generic static visitor that performs a typeid on the value it visits. + // + +-#if !defined(BOOST_NO_TYPEID) +- + class reflect +- : public static_visitor ++ : public static_visitor + { + public: // visitor interfaces + + template +- const std::type_info& operator()(const T&) const BOOST_NOEXCEPT ++ const boost::type_info& operator()(const T&) const BOOST_NOEXCEPT + { +- return typeid(T); ++ return boost::type_id(); + } + + }; + +-#endif // BOOST_NO_TYPEID +- + /////////////////////////////////////////////////////////////////////////////// + // (detail) class comparer + // +@@ -2155,13 +2149,11 @@ + return false; + } + +-#if !defined(BOOST_NO_TYPEID) +- const std::type_info& type() const ++ const boost::type_info& type() const + { + detail::variant::reflect visitor; + return this->apply_visitor(visitor); + } +-#endif + + public: // prevent comparison with foreign types +