diff --git a/include/boost/geometry/algorithms/area.hpp b/include/boost/geometry/algorithms/area.hpp index f60bbdc63..a4c8e547c 100644 --- a/include/boost/geometry/algorithms/area.hpp +++ b/include/boost/geometry/algorithms/area.hpp @@ -179,7 +179,8 @@ template struct devarianted_area { template - static inline typename Strategy::return_type apply(Geometry const& geometry, Strategy const& strategy) + static inline typename Strategy::return_type apply(Geometry const& geometry, + Strategy const& strategy) { return area::apply(geometry, strategy); } @@ -202,9 +203,10 @@ struct devarianted_area > } }; - template + template static inline typename Strategy::return_type - apply(Geometry const& geometry, Strategy const& strategy) + apply(boost::variant const& geometry, + Strategy const& strategy) { return boost::apply_visitor(visitor(strategy), geometry); } @@ -251,7 +253,7 @@ inline typename default_area_result::type area(Geometry const& geometr // detail::throw_on_empty_input(geometry); - return dispatch::area::apply(geometry, strategy_type()); + return dispatch::devarianted_area::apply(geometry, strategy_type()); } /*!