
John Maddock wrote:
The trouble is, who decides which warnings get suppressed?
True.
Or to put it another way, every warning needs a number one human eyeball to look over the code and decide whether there is an issue or not.
And yes, many of the common, annoying warnings do sometimes result in genuine fixes to code. I'm sure this will be true of the new "deprecated" warnings as well, even though they are truly annoying in many cases.
So... while we clearly need a policy to deal with this, I would rather it was something that encouraged authors to "do the right thing", which probably varies case by case. It would also help if Microsoft had more documentation on this: anyone know how to mark a user defined iterator as "unbounded" for example?
This would be a good thing to have in the wiki, where developers can work on a database of known warnings in different compilers and how to fix them. I am not sure on how to mark iterators as unbounded, but someone who does could add that to the wiki. It would also be a good idea to move this to official Boost document (a "best practices" guide). One problem with this: including standard headers. The Microsoft standard libraries don't compile cleanly on level 4 warnings :( (e.g. the dead code warning when including <vector> or <map>). - Reece