diff --git a/model/cs/content-store-with-freshness.h b/model/cs/content-store-with-freshness.h
index c15ded6..9f394e3 100644
--- a/model/cs/content-store-with-freshness.h
+++ b/model/cs/content-store-with-freshness.h
@@ -105,7 +105,7 @@
 
   if (freshness.size () > 0)
     {
-      Time nextStateTime = freshness_policy_container::policy::get_freshness (&(*freshness.begin ()));
+      Time nextStateTime = freshness_policy_container::policy_base::get_freshness (&(*freshness.begin ()));
 
       if (m_scheduledCleaningTime.IsZero () || // if not yet scheduled
           m_scheduledCleaningTime > nextStateTime) // if new item expire sooner than already scheduled
@@ -143,7 +143,7 @@
     {
       typename freshness_policy_container::iterator entry = freshness.begin ();
 
-      if (freshness_policy_container::policy::get_freshness (&(*entry)) <= now) // is the record stale?
+      if (freshness_policy_container::policy_base::get_freshness (&(*entry)) <= now) // is the record stale?
         {
           super::erase (&(*entry));
         }
diff --git a/utils/trie/freshness-policy.h b/utils/trie/freshness-policy.h
index eec8400..e123d73 100644
--- a/utils/trie/freshness-policy.h
+++ b/utils/trie/freshness-policy.h
@@ -84,7 +84,7 @@
     class type : public policy_container
     {
     public:
-      typedef policy policy; // to get access to get_freshness methods from outside
+      typedef policy policy_base; // to get access to get_freshness methods from outside
       typedef Container parent_trie;
 
       type (Base &base)
diff --git a/utils/trie/lifetime-stats-policy.h b/utils/trie/lifetime-stats-policy.h
index ade48cc..12906ca 100644
--- a/utils/trie/lifetime-stats-policy.h
+++ b/utils/trie/lifetime-stats-policy.h
@@ -72,7 +72,7 @@
     class type : public policy_container
     {
     public:
-      typedef policy policy; // to get access to get_time methods from outside
+      typedef policy policy_base; // to get access to get_time methods from outside
       typedef Container parent_trie;
 
       type (Base &base)
diff --git a/utils/trie/multi-policy.h b/utils/trie/multi-policy.h
index 0745cd3..e662aff 100644
--- a/utils/trie/multi-policy.h
+++ b/utils/trie/multi-policy.h
@@ -87,6 +87,7 @@
     class type : public policy_container
     {
     public:
+      typedef policy policy_base; // to get access to get_time methods from outside
       typedef Container parent_trie;
 
       type (Base &base)
diff --git a/utils/trie/random-policy.h b/utils/trie/random-policy.h
index b5e1d8a..1a7308c 100644
--- a/utils/trie/random-policy.h
+++ b/utils/trie/random-policy.h
@@ -82,7 +82,7 @@
     class type : public policy_container
     {
     public:
-      typedef policy policy; // to get access to get_order methods from outside
+      typedef policy policy_base; // to get access to get_order methods from outside
       typedef Container parent_trie;
 
       type (Base &base)
