I quite agree that your version with for reads better than map. However, having followed the linked discussion as you suggest, I see no justification for going as far as calling it 'bad' to use map in void context and consider that part an overreaction.
That'll teach me to link to discussions without reading them thoroughly :)
The point I was expecting that discussion to make was that before the application of the patch in 5.8.1, map in a void context used to build up a return list before discarding it. So in older perls it was slower than using the equivalent "for" construct. Nowadays, speed is no longer an issue but readability still is.