You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
7 years ago
|
Index: /trunk/boost/foreach_fwd.hpp
|
||
|
===================================================================
|
||
|
--- /trunk/boost/foreach_fwd.hpp (revision 62661)
|
||
|
+++ /trunk/boost/foreach_fwd.hpp (revision 75540)
|
||
|
@@ -15,4 +15,6 @@
|
||
|
#define BOOST_FOREACH_FWD_HPP
|
||
|
|
||
|
+#include <utility> // for std::pair
|
||
|
+
|
||
|
// This must be at global scope, hence the uglified name
|
||
|
enum boost_foreach_argument_dependent_lookup_hack
|
||
|
@@ -26,4 +28,7 @@
|
||
|
namespace foreach
|
||
|
{
|
||
|
+ template<typename T>
|
||
|
+ std::pair<T, T> in_range(T begin, T end);
|
||
|
+
|
||
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
// boost::foreach::tag
|
||
|
@@ -47,4 +52,22 @@
|
||
|
} // namespace foreach
|
||
|
|
||
|
+// Workaround for unfortunate https://svn.boost.org/trac/boost/ticket/6131
|
||
|
+namespace BOOST_FOREACH
|
||
|
+{
|
||
|
+ using foreach::in_range;
|
||
|
+ using foreach::tag;
|
||
|
+
|
||
|
+ template<typename T>
|
||
|
+ struct is_lightweight_proxy
|
||
|
+ : foreach::is_lightweight_proxy<T>
|
||
|
+ {};
|
||
|
+
|
||
|
+ template<typename T>
|
||
|
+ struct is_noncopyable
|
||
|
+ : foreach::is_noncopyable<T>
|
||
|
+ {};
|
||
|
+
|
||
|
+} // namespace BOOST_FOREACH
|
||
|
+
|
||
|
} // namespace boost
|
||
|
|
||
|
Index: /trunk/boost/foreach.hpp
|
||
|
===================================================================
|
||
|
--- /trunk/boost/foreach.hpp (revision 75077)
|
||
|
+++ /trunk/boost/foreach.hpp (revision 75540)
|
||
|
@@ -166,5 +166,5 @@
|
||
|
// at the global namespace for your type.
|
||
|
template<typename T>
|
||
|
-inline boost::foreach::is_lightweight_proxy<T> *
|
||
|
+inline boost::BOOST_FOREACH::is_lightweight_proxy<T> *
|
||
|
boost_foreach_is_lightweight_proxy(T *&, BOOST_FOREACH_TAG_DEFAULT) { return 0; }
|
||
|
|
||
|
@@ -191,5 +191,5 @@
|
||
|
// at the global namespace for your type.
|
||
|
template<typename T>
|
||
|
-inline boost::foreach::is_noncopyable<T> *
|
||
|
+inline boost::BOOST_FOREACH::is_noncopyable<T> *
|
||
|
boost_foreach_is_noncopyable(T *&, BOOST_FOREACH_TAG_DEFAULT) { return 0; }
|
||
|
|