provide is_substitute specialisation for mapnik::geometry::linear_ring<double> const& (gcc6)

This commit is contained in:
artemp 2017-03-14 11:05:33 +01:00
parent cdfe280984
commit 32f5703ed1

View file

@ -26,13 +26,16 @@
#include <mapnik/wkt/wkt_grammar_x3.hpp>
#include <mapnik/geometry/fusion_adapted.hpp>
#if defined(__GNUC__) && BOOST_VERSION < 106300
// instantiate `is_substitute` for reference T and reference Attribute
// fixes gcc6 compilation issue with boost 1_61 and boost_1_62
#if defined(__GNUC__)
// instantiate `is_substitute` for const reference T and reference Attribute
// fixes gcc6 compilation issue
namespace boost { namespace spirit { namespace x3 { namespace traits {
template <typename T, typename Attribute, typename Enable>
struct is_substitute<T&, Attribute&, Enable>
: is_substitute<T, Attribute, Enable> {};
using ring_type = mapnik::geometry::linear_ring<double>;
template <>
struct is_substitute<ring_type const&, ring_type const& , void>
: is_substitute<ring_type, ring_type, void> {};
}}}}
#endif