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_;
     };