diff --git a/alib2common/src/container/ObjectsDeque.h b/alib2common/src/container/ObjectsDeque.h
index 2eca9e9fac237ed8f66afbee27d6f1cbce4fd238..0433b462c49f848a7615c14261e14bb609e4185b 100644
--- a/alib2common/src/container/ObjectsDeque.h
+++ b/alib2common/src/container/ObjectsDeque.h
@@ -81,7 +81,7 @@ ContainerBase * ObjectsDeque < ElementType >::plunder ( ) && {
 
 template < class ElementType >
 int ObjectsDeque < ElementType >::compare ( const ObjectsDeque & other ) const {
-	std::compare < std::deque < ElementType > > comp;
+	static std::compare < std::deque < ElementType > > comp;
 
 	return comp ( static_cast < const std::deque < ElementType > & > ( * this ), static_cast < const std::deque < ElementType > & > ( other ) );
 }
diff --git a/alib2common/src/container/ObjectsList.h b/alib2common/src/container/ObjectsList.h
index fc42141fcf3d77dd08fa66a59795662595313184..e886a2d510773cd9471e2cb99a971730c3596c3b 100644
--- a/alib2common/src/container/ObjectsList.h
+++ b/alib2common/src/container/ObjectsList.h
@@ -81,7 +81,7 @@ ContainerBase * ObjectsList < ElementType >::plunder ( ) && {
 
 template < class ElementType >
 int ObjectsList < ElementType >::compare ( const ObjectsList & other ) const {
-	std::compare < std::list < ElementType > > comp;
+	static std::compare < std::list < ElementType > > comp;
 
 	return comp ( static_cast < const std::list < ElementType > & > ( * this ), static_cast < const std::list < ElementType > & > ( other ) );
 }
diff --git a/alib2common/src/container/ObjectsMap.h b/alib2common/src/container/ObjectsMap.h
index bd4b7da3217f7b4977baf5d5d5b4cd4bac012959..7b34b54380a824d61fd25ef895736e8876a8b881 100644
--- a/alib2common/src/container/ObjectsMap.h
+++ b/alib2common/src/container/ObjectsMap.h
@@ -85,7 +85,7 @@ ContainerBase* ObjectsMap<KeyType, ValueType>::plunder() && {
 
 template < class KeyType, class ValueType >
 int ObjectsMap<KeyType, ValueType>::compare(const ObjectsMap& other) const {
-	std::compare<std::map<KeyType, ValueType>> comp;
+	static std::compare<std::map<KeyType, ValueType>> comp;
 	return comp ( static_cast < const std::map < KeyType, ValueType > & > ( * this ), static_cast < const std::map < KeyType, ValueType > & > ( other ) );
 }
 
diff --git a/alib2common/src/container/ObjectsPair.h b/alib2common/src/container/ObjectsPair.h
index bf1147d2e5e7179410cb6ef161a21992ab96f139..90e1075365d309943b822848ee6aecf3e14ed6f6 100644
--- a/alib2common/src/container/ObjectsPair.h
+++ b/alib2common/src/container/ObjectsPair.h
@@ -83,7 +83,7 @@ ContainerBase* ObjectsPair < FirstType, SecondType >::plunder() && {
 
 template < class FirstType, class SecondType >
 int ObjectsPair < FirstType, SecondType >::compare(const ObjectsPair& other) const {
-	std::compare<std::pair<FirstType, SecondType>> comp;
+	static std::compare<std::pair<FirstType, SecondType>> comp;
 	return comp ( static_cast < const std::pair < FirstType, SecondType > & > ( * this ), static_cast < const std::pair < FirstType, SecondType > & > ( other ) );
 }
 
diff --git a/alib2common/src/container/ObjectsSet.h b/alib2common/src/container/ObjectsSet.h
index 7c3bbcbf748144f4a8a83bd88cde377f072b1e30..953e9bb12801bd29578a69667a14b2fb890acadd 100644
--- a/alib2common/src/container/ObjectsSet.h
+++ b/alib2common/src/container/ObjectsSet.h
@@ -83,7 +83,7 @@ ContainerBase* ObjectsSet < ElementType >::plunder() && {
 
 template < class ElementType >
 int ObjectsSet < ElementType >::compare(const ObjectsSet& other) const {
-	std::compare<std::set<ElementType>> comp;
+	static std::compare<std::set<ElementType>> comp;
 	return comp ( static_cast < const std::set < ElementType > & > ( * this ), static_cast < const std::set < ElementType > & > ( other ) );
 }
 
diff --git a/alib2common/src/container/ObjectsTree.h b/alib2common/src/container/ObjectsTree.h
index 3924bb08fd432250c130d7df872b4eb8de629d43..edde9ad250fd45c706b80f4e633f5508695f71eb 100644
--- a/alib2common/src/container/ObjectsTree.h
+++ b/alib2common/src/container/ObjectsTree.h
@@ -76,7 +76,7 @@ ContainerBase * ObjectsTree < ElementType >::plunder ( ) && {
 
 template < class ElementType >
 int ObjectsTree < ElementType >::compare ( const ObjectsTree & other ) const {
-	std::compare < std::tree < ElementType > > comp;
+	static std::compare < std::tree < ElementType > > comp;
 
 	return comp ( static_cast < const std::tree < ElementType > & > ( * this ), static_cast < const std::tree < ElementType > & > ( other ) );
 }
diff --git a/alib2common/src/container/ObjectsTrie.h b/alib2common/src/container/ObjectsTrie.h
index 7d4a33f34e2cd3171a5eace59ae9d6b142fee357..058676c5a558e69212d52f0bb3b88789f36499d3 100644
--- a/alib2common/src/container/ObjectsTrie.h
+++ b/alib2common/src/container/ObjectsTrie.h
@@ -78,7 +78,7 @@ ContainerBase * ObjectsTrie < KeyType, ValueType >::plunder ( ) && {
 
 template < class KeyType, class ValueType >
 int ObjectsTrie < KeyType, ValueType >::compare ( const ObjectsTrie & other ) const {
-	std::compare < std::trie < KeyType, ValueType > > comp;
+	static std::compare < std::trie < KeyType, ValueType > > comp;
 
 	return comp ( static_cast < const std::trie < KeyType, ValueType > & > ( * this ), static_cast < const std::trie < KeyType, ValueType > & > ( other ) );
 }
diff --git a/alib2common/src/container/ObjectsVector.h b/alib2common/src/container/ObjectsVector.h
index b46844f94a2b8627207d06d1074d56b08f69e0ed..c183823bb6ed4b00b39e793d435b447215b4c548 100644
--- a/alib2common/src/container/ObjectsVector.h
+++ b/alib2common/src/container/ObjectsVector.h
@@ -81,7 +81,7 @@ ContainerBase * ObjectsVector < ElementType >::plunder ( ) && {
 
 template < class ElementType >
 int ObjectsVector < ElementType >::compare ( const ObjectsVector & other ) const {
-	std::compare < std::vector < ElementType > > comp;
+	static std::compare < std::vector < ElementType > > comp;
 
 	return comp ( static_cast < const std::vector < ElementType > & > ( * this ), static_cast < const std::vector < ElementType > & > ( other ) );
 }
diff --git a/alib2common/src/object/AnyObject.h b/alib2common/src/object/AnyObject.h
index 1ceb91312e329db1a7b789777f0d1e290092d7fb..c44761d97c4c2a4d84a826c8bdaeda8636ecbcd0 100644
--- a/alib2common/src/object/AnyObject.h
+++ b/alib2common/src/object/AnyObject.h
@@ -80,7 +80,7 @@ const T & AnyObject < T >::getData ( ) const {
 
 template < class T >
 int AnyObject < T >::compare(const AnyObject < T > & other ) const {
-	std::compare < decltype ( m_data ) > comp;
+	static std::compare < decltype ( m_data ) > comp;
 
 	return comp ( m_data, other.m_data );
 }