$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r77210 - trunk/boost/geometry/extensions/algorithms/buffer
From: barend.gehrels_at_[hidden]
Date: 2012-03-04 07:02:04
Author: barendgehrels
Date: 2012-03-04 07:02:03 EST (Sun, 04 Mar 2012)
New Revision: 77210
URL: http://svn.boost.org/trac/boost/changeset/77210
Log:
[geometry] updated buffer for clang compilation
Text files modified: 
   trunk/boost/geometry/extensions/algorithms/buffer/buffer_inserter.hpp           |    16 +++++++++++++---                        
   trunk/boost/geometry/extensions/algorithms/buffer/buffered_piece_collection.hpp |     6 +++---                                  
   2 files changed, 16 insertions(+), 6 deletions(-)
Modified: trunk/boost/geometry/extensions/algorithms/buffer/buffer_inserter.hpp
==============================================================================
--- trunk/boost/geometry/extensions/algorithms/buffer/buffer_inserter.hpp	(original)
+++ trunk/boost/geometry/extensions/algorithms/buffer/buffer_inserter.hpp	2012-03-04 07:02:03 EST (Sun, 04 Mar 2012)
@@ -223,6 +223,11 @@
             ring_tag
         >
 {
+    typedef detail::buffer::buffer_range
+        <
+            RingOutput, 
+            ring_tag
+        > base;
 
     template
     <
@@ -233,7 +238,7 @@
             DistanceStrategy const& distance,
             JoinStrategy const& join_strategy)
     {
-        iterate(collection, boost::begin(ring), boost::end(ring),
+        base::iterate(collection, boost::begin(ring), boost::end(ring),
                 buffer_side_left,
                 distance, join_strategy);
     }
@@ -252,6 +257,11 @@
             linestring_tag
         >
 {
+    typedef detail::buffer::buffer_range
+        <
+            typename ring_type<Polygon>::type, 
+            linestring_tag
+        > base;
 
     template<typename Collection, typename DistanceStrategy, typename JoinStrategy>
     static inline void apply(Linestring const& linestring, Collection& collection,
@@ -259,11 +269,11 @@
             JoinStrategy const& join_strategy)
     {
         collection.start_new_ring();
-        iterate(collection, boost::begin(linestring), boost::end(linestring),
+        base::iterate(collection, boost::begin(linestring), boost::end(linestring),
                 buffer_side_left,
                 distance, join_strategy);
                 
-        iterate(collection, boost::rbegin(linestring), boost::rend(linestring),
+        base::iterate(collection, boost::rbegin(linestring), boost::rend(linestring),
                 buffer_side_right,
                 distance, join_strategy, true);
 
Modified: trunk/boost/geometry/extensions/algorithms/buffer/buffered_piece_collection.hpp
==============================================================================
--- trunk/boost/geometry/extensions/algorithms/buffer/buffered_piece_collection.hpp	(original)
+++ trunk/boost/geometry/extensions/algorithms/buffer/buffered_piece_collection.hpp	2012-03-04 07:02:03 EST (Sun, 04 Mar 2012)
@@ -10,8 +10,8 @@
 #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_BUFFER_BUFFERED_PIECE_COLLECTION_HPP
 
 
+#include <algorithm>
 #include <cstddef>
-
 #include <set>
 #include <boost/range.hpp>
 
@@ -352,11 +352,11 @@
 
     inline void add_segment(int index, point_type const& point, buffer_turn_operation<point_type> const& operation)
     {
-        clustered_location_type::iterator it = clustered_turn_locations.find(point);
+        typename clustered_location_type::iterator it = clustered_turn_locations.find(point);
         if (it == boost::end(clustered_turn_locations))
         {
             buffer_cluster_info a;
-			std::pair<clustered_location_type::iterator, bool> pair = clustered_turn_locations.insert(std::make_pair(point, a));
+            std::pair<typename clustered_location_type::iterator, bool> pair = clustered_turn_locations.insert(std::make_pair(point, a));
             it = pair.first;
         }