diff --git a/include/boost/polygon/point_data.hpp b/include/boost/polygon/point_data.hpp index 23c23ed..8224657 100644 --- a/include/boost/polygon/point_data.hpp +++ b/include/boost/polygon/point_data.hpp @@ -45,10 +45,18 @@ class point_data { return *this; } +#ifdef __GNUC__ + // "explicit" to work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63356 + template + explicit point_data(const PointType& that) { + *this = that; + } +#else // __GNUC__ template point_data(const PointType& that) { *this = that; } +#endif // __GNUC__ template point_data& operator=(const PointType& that) {