diff --git a/alib2std/src/extensions/forward_tree.hpp b/alib2std/src/extensions/forward_tree.hpp
index 1a72d89bfd42b9d8dfb6f5e065bb483b055b393f..00970e372111edaf873491986d8b1752e99d03e3 100644
--- a/alib2std/src/extensions/forward_tree.hpp
+++ b/alib2std/src/extensions/forward_tree.hpp
@@ -151,6 +151,10 @@ public:
 			return node->getData ( );
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		size_t operator -( const const_children_iterator other ) const {
 			return node - other.node;
 		}
@@ -287,6 +291,10 @@ public:
 			return node->getData ( );
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return level;
 		}
@@ -356,6 +364,10 @@ public:
 			return * node;
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return node.getLevel ( );
 		}
@@ -421,6 +433,10 @@ public:
 			return * node;
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return node.getLevel ( );
 		}
diff --git a/alib2std/src/extensions/tree.hpp b/alib2std/src/extensions/tree.hpp
index b5721b1186891bbd2196cc049dd28ed87d3aedb6..61df0b725bd63b8067add994084e6dcb571ceeab 100644
--- a/alib2std/src/extensions/tree.hpp
+++ b/alib2std/src/extensions/tree.hpp
@@ -173,6 +173,10 @@ public:
 			return node->getData ( );
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		size_t operator -( const const_children_iterator other ) const {
 			return node - other.node;
 		}
@@ -306,6 +310,10 @@ public:
 			return node->getData ( );
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return level;
 		}
@@ -375,6 +383,10 @@ public:
 			return * node;
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return node.getLevel ( );
 		}
@@ -440,6 +452,10 @@ public:
 			return * node;
 		}
 
+		const T * operator ->( ) const {
+			return & node->getData ( );
+		}
+
 		unsigned getLevel ( ) const {
 			return node.getLevel ( );
 		}