id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 3746,list_iterator::operator == fails to accept a non-const var to the left and a const one to the right,gvlad@…,Ion Gaztañaga,"The following code fails to compile (msvc 9): using namespace boost::intrusive; struct my_struct : list_base_hook<> {}; typedef list my_list; my_list l; my_list::const_iterator it = l.begin(); if (l.end() == it) {} // fails if (it == l.end()) {} // succeeds If to use std::list there is no such problem because std::list::iterator is derived from std::list::const_iterator. My suggesion is to use template ""operator =="" for list_iterator that accepts both const and non-const interator. For example: (""list_node.hpp"") template bool operator== (const list_iterator& i) const { return members_.nodeptr_ == i.pointed_node(); }",Bugs,closed,Boost 1.45.0,intrusive,Boost 1.41.0,Problem,fixed,,