Joseph Wakeling: > ... when it reappears in D as: > > foreach(uint i;0..10000) { > auto f = new Foo(i); > // Do something with f ... > } Also try: foreach(uint i;0..10000) { scope Foo f = new Foo(i); // Do something with f ... } That sometimes doesn't require allocations. Bye, bearophile