diff --git a/alib2algo/src/regexp/simplify/RegExpOptimizeUnboundedPart.cxx b/alib2algo/src/regexp/simplify/RegExpOptimizeUnboundedPart.cxx
index 5f5ae08ec5ad041f16b15213e1ad997b4f2eeb5f..56bdafdc760a6fec1dad54cf4c85aadad92fb0a3 100644
--- a/alib2algo/src/regexp/simplify/RegExpOptimizeUnboundedPart.cxx
+++ b/alib2algo/src/regexp/simplify/RegExpOptimizeUnboundedPart.cxx
@@ -884,7 +884,7 @@ bool RegExpOptimize::V10( UnboundedRegExpIteration < alphabet::Symbol > & node )
 	if( ! alt || ! any_of( alt->getChildren ( ).begin( ), alt->getChildren ( ).end( ), [] ( std::smart_ptr < UnboundedRegExpElement < alphabet::Symbol > > & a ) -> bool{ return dynamic_cast<UnboundedRegExpIteration < alphabet::Symbol > * >( a.get() ); } ) )
 		return false;
 
-	for( auto it = alt->getChildren ( ).begin( ); it != alt->getChildren ( ).end( ); ) {
+	for( auto it = alt->getChildren ( ).begin( ); it != alt->getChildren ( ).end( ); ++it ) {
 		if ( dynamic_cast < UnboundedRegExpIteration < alphabet::Symbol > * > ( it->get ( ) ) )
 			alt->setChild ( std::move ( static_cast < UnboundedRegExpIteration < alphabet::Symbol > * >( it->get ( ) )->getChild ( ) ), it );
 	}