Ticket #12761 (closed Bugs: fixed)
intrusive::set::swap doesn't swap the comparison function
|Reported by:||fdegros@…||Owned by:||igaztanaga|
|Milestone:||To Be Determined||Component:||intrusive|
If you have two Boost intrusive set or multiset objets with a stateful comparison function, swapping them with the swap method doesn't seem to swap the state of their comparison functions.
Is it normal?
Using std::swap doesn't swap their comparison function either, which seems to suggest that set's and multiset's move assignment operator doesn't move the comparison function.
However, it seems that set's and multiset's move constructor does copy the comparison function (by using its copy constructor, not its move constructor though).