Opened 11 years ago
Closed 11 years ago
#6210 closed Bugs (fixed)
interval customization results in compilation errors
Reported by: | opium | Owned by: | Joachim Faulhaber |
---|---|---|---|
Milestone: | Boost 1.49.0 | Component: | ICL |
Version: | Boost 1.47.0 | Severity: | Problem |
Keywords: | ICL, interval customization, static_closed bounds, compilation error | Cc: |
Description
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) };
Change History (3)
comment:1 by , 11 years ago
comment:2 by , 11 years ago
Milestone: | To Be Determined → Boost 1.49.0 |
---|---|
Status: | new → assigned |
Thanks for sending in this bug report. I will fix the bug immediately. Regards, Joachim
comment:3 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Using of insert method with iterator arguments also results in compilation error.
New version of void custom_interval () from the same source file boost/libs/icl/example/custom_interval_/custom_interval.cpp (with interval_bound_type <MyInterval>::value = interval_bounds::static_right_open):
Compilation error: