diff --git a/include/boost/geometry/io/wkt/read.hpp b/include/boost/geometry/io/wkt/read.hpp index 236111d81..033c96a0a 100644 --- a/include/boost/geometry/io/wkt/read.hpp +++ b/include/boost/geometry/io/wkt/read.hpp @@ -232,15 +232,10 @@ struct container_inserter template ::type - >::value> + closure_selector Closure = closure::value> struct stateful_range_appender { - typedef typename boost::remove_reference::type bare_geometry; - typedef typename geometry::point_type::type point_type; + typedef typename geometry::point_type::type point_type; inline void append(Geometry & geom, point_type const& point, bool) { @@ -251,13 +246,15 @@ struct stateful_range_appender template struct stateful_range_appender { - typedef typename boost::remove_reference::type bare_geometry; - typedef typename geometry::point_type::type point_type; - typedef typename boost::range_size::type size_type; + typedef typename geometry::point_type::type point_type; + typedef typename boost::range_size + < + typename util::bare_type::type + >::type size_type; BOOST_STATIC_ASSERT(( boost::is_same < - typename tag::type, + typename tag::type, ring_tag >::value )); @@ -299,8 +296,7 @@ private: template struct container_appender { - typedef typename boost::remove_reference::type bare_geometry; - typedef typename geometry::point_type::type point_type; + typedef typename geometry::point_type::type point_type; static inline void apply(tokenizer::iterator& it, tokenizer::iterator end, std::string const& wkt, Geometry out)