diff --git a/GeoLib/SimplePolygonTree.h b/GeoLib/SimplePolygonTree.h
index f05c8845dd81de05b386c88329e2e5b845ee8c09..adbaf2a157a5fc913e0824823454dd3d0614fba7 100644
--- a/GeoLib/SimplePolygonTree.h
+++ b/GeoLib/SimplePolygonTree.h
@@ -86,8 +86,9 @@ private:
 template <typename POLYGONTREETYPE>
 void createPolygonTrees (std::list<POLYGONTREETYPE*>& list_of_simple_polygon_hierarchies)
 {
-	typedef typename std::list<POLYGONTREETYPE*>::const_iterator IT;
-	for (IT it0(list_of_simple_polygon_hierarchies.begin());
+	typedef typename std::list<POLYGONTREETYPE*>::const_iterator CIT;
+	typedef typename std::list<POLYGONTREETYPE*>::iterator IT;
+	for (CIT it0(list_of_simple_polygon_hierarchies.begin());
 		it0 != list_of_simple_polygon_hierarchies.end(); ++it0) {
 		IT it1 = list_of_simple_polygon_hierarchies.begin();
 		while (it1 != list_of_simple_polygon_hierarchies.end()) {