[Boost-bugs] [Boost C++ Libraries] #6210: interval customization results in compilation errors

Subject: [Boost-bugs] [Boost C++ Libraries] #6210: interval customization results in compilation errors
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-12-05 12:59:12


#6210: interval customization results in compilation errors
----------------------------------------------------------------------------------+
 Reporter: opium | Owner: jofaber
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: ICL
  Version: Boost 1.47.0 | Severity: Problem
 Keywords: ICL, interval customization, static_closed bounds, compilation error |
----------------------------------------------------------------------------------+
 Changing of interval bounds type in example
 boost/libs/icl/example/custom_interval_/custom_interval.cpp to
 static_closed leads to:

 boost/icl/concept/interval.hpp: In function 'typename
 boost::enable_if<boost::icl::has_static_bounds<Type>, bool>::type
 boost::icl::lower_less(const Type&, const Type&) [with Type =
 MyInterval]':
 boost/icl/concept/interval.hpp:877: instantiated from 'typename
 boost::enable_if<boost::icl::is_interval<Type>, bool>::type
 boost::icl::lower_less_equal(const Type&, const Type&) [with Type =
 MyInterval]'
 boost/icl/concept/interval.hpp:1199: instantiated from 'typename
 boost::enable_if<boost::icl::is_static_closed<Type>, Type>::type
 boost::icl::right_subtract(Type, const Type&) [with Type = MyInterval]'
 boost/icl/concept/interval_set.hpp:249: instantiated from 'typename
 boost::enable_if<boost::icl::is_interval_set<Type>, Type>::type&
 boost::icl::flip(Type&, const typename Type::segment_type&) [with Type =
 boost::icl::interval_set<int, std::less, MyInterval, std::allocator>]'
 boost/icl/concept/interval_associator.hpp:772: instantiated from
 'typename boost::enable_if<boost::icl::is_intra_derivative<Type,
 AssociateT>, Type>::type& boost::icl::operator^=(Type&, const OperandT&)
 [with Type = custom_interval()::MyIntervalSet, OperandT = MyInterval]'
 custom_interval.cpp:80: instantiated from here
 boost/icl/concept/interval.hpp:728: error: 'const class MyInterval' has no
 member named 'lower'
 boost/icl/concept/interval.hpp:728: error: 'const class MyInterval' has no
 member named 'lower'


 {{{
 template<>
 struct interval_bound_type<MyInterval> //4. Finally we define the
 interval borders.
 { // Choose between
 static_open (lo..up)
     typedef interval_bound_type type; //
 static_left_open (lo..up]
     BOOST_STATIC_CONSTANT(bound_type, value =
 interval_bounds::static_closed);//[lo..up)
 };

 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/6210>
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:08 UTC