[Boost-bugs] [Boost C++ Libraries] #10033: scale_down on rectangle does not compile

Subject: [Boost-bugs] [Boost C++ Libraries] #10033: scale_down on rectangle does not compile
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-05-10 08:47:54


#10033: scale_down on rectangle does not compile
-------------------------------------------------+-------------------------
 Reporter: Jakob Schou Jensen | Owner: ljsimons
  <jakob.schou.jensen@…> | Status: new
     Type: Bugs | Component: polygon
Milestone: To Be Determined | Severity: Problem
  Version: Boost 1.55.0 |
 Keywords: |
-------------------------------------------------+-------------------------
 I get a compile error when calling scale_down on a rectangle: eg:

 {{{
 rectangle_data<int> r;
 scale_down( r, 2 );
 }}}

 {{{
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/rectangle_concept.hpp:984:25:
 error: no matching function for
       call to 'scale_down'
     vertical(rectangle, scale_down(vertical(rectangle), factor));
                         ^~~~~~~~~~
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/interval_concept.hpp:386:10:
 note: candidate function [with
       IntervalType = boost::polygon::interval_data<int>] not viable:
 expects an l-value for 1st argument
>::type& scale_down(
          ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/point_concept.hpp:395:3:
 note: candidate template ignored:
       disabled by 'enable_if' [with PointType =
 boost::polygon::interval_data<int>, CType = unsigned long long]
   typename gtl_and<
   ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/rectangle_concept.hpp:979:22:
 note: candidate template
       ignored: disabled by 'enable_if' [with rectangle_type =
 boost::polygon::interval_data<int>]
   typename enable_if<typename gtl_and<y_r_scale_down, typename
 is_mutable_rectangle_concept<typename geo...
                      ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/segment_concept.hpp:437:3:
 note: candidate template ignored:
       disabled by 'enable_if' [with Segment =
 boost::polygon::interval_data<int>]
   typename gtl_and<
   ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_traits.hpp:735:5:
 note: candidate template ignored:
       disabled by 'enable_if' [with polygon_type =
 boost::polygon::interval_data<int>]
     typename gtl_and< typename
 is_any_mutable_polygon_without_holes_type<polygon_type>::type,
     ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_traits.hpp:870:5:
 note: candidate template ignored:
       disabled by 'enable_if' [with polygon_type =
 boost::polygon::interval_data<int>]
     typename gtl_and< typename
 is_any_mutable_polygon_without_holes_type<polygon_type>::type,
     ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_traits.hpp:889:23:
 note: candidate template ignored:
       disabled by 'enable_if' [with T =
 boost::polygon::interval_data<int>]
   typename enable_if< typename
 is_any_mutable_polygon_with_holes_type<T>::type, T>::type &
                       ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_90_set_concept.hpp:437:23:
 note: candidate template
       ignored: disabled by 'enable_if' [with polygon_set_type =
 boost::polygon::interval_data<int>]
   typename enable_if< typename
 is_mutable_polygon_90_set_type<polygon_set_type>::type,
                       ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_45_set_concept.hpp:248:23:
 note: candidate template
       ignored: disabled by 'enable_if' [with polygon_set_type =
 boost::polygon::interval_data<int>]
   typename enable_if< typename
 is_mutable_polygon_45_set_type<polygon_set_type>::type,
                       ^
 /Users/schou/frameworks/boost_1_55_0/boost/polygon/polygon_set_concept.hpp:237:23:
 note: candidate template
       ignored: disabled by 'enable_if' [with polygon_set_type =
 boost::polygon::interval_data<int>]
   typename enable_if< typename
 is_mutable_polygon_set_type<polygon_set_type>::type,
                       ^
 2 errors generated.
 }}}

 I am compiling on mac osx maverics.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10033>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:16 UTC