Die Collections aus Spring4D wrappen (ich glaube allesamt) zwar die Standard-Collections, aber haben auch daran gedacht: Wenn der Iterator eins weiter wandert und sich die Collection geändert hat fliegt man raus.
Nachdem jeder im Team mindestens einmal solchen Code geschrieben hat, der dann still und leise falsche Daten zurück ließ, hab ich das seinerzeit eingebaut damit mans direkt mitbekommt
Was mir in Verbindung mit der Frage noch einfiel ist, dass ich mal in IList<T> ein
RemoveAll einbauen sollte.