Bug introduced in 10.0.0 and fixed in 10.0.1
In version 10.0.0 under Windows I am observing the following behavior:
Do[Module[{foo}, foo[x_] := 1; foo[0]], {10}] Names["foo$*"] {"foo$593", "foo$594", "foo$595", "foo$596", "foo$597", "foo$598", "foo$599", "foo$600", "foo$601", "foo$602"}
I am aware that in past versions Module Symbols were sometimes not garbage collected but never in such a simple case as this as far as I know. The code above returns {} in version 7, as one would expect.
Do I have something wrong with my configuration or is this behavior reproducible?
Assuming the latter is there an explanation for this other than a bug?