On Saturday, 3 November 2012 at 14:04:45 UTC, bearophile wrote:

A third solution is use idioms, and do not change D. It means that on default the programmer puts always a "const" in foreach. This avoids most bugs caused by fake Case3, and you don't use it in the uncommon true Cases3.

There are few more alternative ways to face this problem. Including doing nothing :-)

I never use Case3, except accidentally. It's possibly the most common language-caused bug in my D code.

That said, I'm not a fan of introducing new keywords or introducing breaking changes in D code (even though I don't use Case3). I think this might just be something we have to live with, although making use of "const" idiomatic may be a good step forward (unfortunately, it's more unnecessary typing, so it's unlikely to catch on).

Reply via email to