71c71,72
< const_iterator i;
---
> if (tree.empty())
> return tree.end();
73c74
< i = tree.upper_bound(r);
---
> const_iterator i = tree.upper_bound(r);
91,113d91
< iterator
< find(const AddrRange &r)
< {
< iterator i;
<
< i = tree.upper_bound(r);
<
< if (i == tree.begin()) {
< if (i->first.intersects(r))
< return i;
< else
< // Nothing could match, so return end()
< return tree.end();
< }
<
< --i;
<
< if (i->first.intersects(r))
< return i;
<
< return tree.end();
< }
<
120,125d97
< iterator
< find(const Addr &r)
< {
< return find(RangeSize(r, 1));
< }
<
127c99
< intersect(const AddrRange &r)
---
> intersect(const AddrRange &r) const
129,133c101
< iterator i;
< i = find(r);
< if (i != tree.end())
< return true;
< return false;
---
> return find(r) != tree.end();
136c104
< iterator
---
> const_iterator
145,150d112
< std::size_t
< erase(Addr k)
< {
< return tree.erase(k);
< }
<