Now seems that multi-policy container actually works as it should
diff --git a/utils/lru-policy.h b/utils/lru-policy.h
index 14e49f7..cd091ce 100644
--- a/utils/lru-policy.h
+++ b/utils/lru-policy.h
@@ -23,12 +23,11 @@
struct lru_policy_traits
{
- typedef bi::list_member_hook<> policy_hook_type;
+ struct policy_hook_type : public bi::list_member_hook<> {};
template<class Container>
struct container_hook
{
- // could be class/struct implementation
typedef bi::member_hook< Container,
policy_hook_type,
&Container::policy_hook_ > type;
@@ -102,6 +101,9 @@
}
private:
+ type () : base_(*((Base*)0)) { };
+
+ private:
Base &base_;
size_t max_size_;
};