id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 11803,Fails with closed intervals fails in some border cases.,shewitt.au@…,Joachim Faulhaber,"ICL seems not to handle sets that contain the maximum element of the domain type. I have attached a file that shows the problem. The problem is in the fie \boost\icl\concept\interval.hpp (line 1145) in the left_subtract. It should look like this: {{{ template typename boost::enable_if, Type>::type left_subtract(Type right, const Type& left_minuend) { if(exclusive_less(left_minuend, right)) return right; else if(upper_less_equal(right, left_minuend)) return identity_element::value(); return construct(domain_next(upper(left_minuend)), upper(right)); } }}} Where as it actually looks like this: {{{ template typename boost::enable_if, Type>::type left_subtract(Type right, const Type& left_minuend) { if(exclusive_less(left_minuend, right)) return right; return construct(domain_next(upper(left_minuend)), upper(right)); } }}} The right subtract function is ok. The comment for the left_subtract functions is also wrong. ""Return the difference: The part of \c right '''right''' of \c left_minuend."" The word ""right"" in BOLD should read ""left"".",Bugs,closed,To Be Determined,ICL,Boost 1.59.0,Showstopper,fixed,,