Treat warnings as errors ?
-
Do you used to turn it on ? I always plan to do so, but the number of warnings will force me to turn it off again. I would like to know is it worth turning that option "on" ?
Well thanks for reminding me to check mine. :-D I have that turned off and I use warning level 4. But here's the situation: for my primary library project I have the release build produce an XML documentation file, which results in (currently) 1390 warnings of type 1591: "Missing XML comment for publicly visible type or member '...'" Which sometimes (as I just did) I choose to suppress, but most of the time I don't. I think maybe I should suppress it most of the time. :~
-
Do you used to turn it on ? I always plan to do so, but the number of warnings will force me to turn it off again. I would like to know is it worth turning that option "on" ?
-
Do you used to turn it on ? I always plan to do so, but the number of warnings will force me to turn it off again. I would like to know is it worth turning that option "on" ?
Always for release builds. For debug builds when the product is in, or close to, maintenance phase. I also put warnings at 4, though with very small number of exceptions. I worked on a project once that had over 8,000 warnings at level 3. (I was told that it was 20,000+ at one point.) Apparently, the previous developers would redirect the warnings into a file and do a diff on it and examine the diff. They would choose which warnings to ignore and which ones to fix and then create a new master warnings file. My boss and coworker eliminated all the warnings, cranked it up to level 4, and eliminated those. The crazy part is how often the warnings really were indicating serious problems. For the record, here is my standard list of ignored warnings.
#pragma warning(disable : 4710) // function not inlined
#pragma warning(disable : 4711) // function 'function' selected for inline expansion
#pragma warning(disable : 4200) // nonstandard extension used : zero-sized array in struct/unionAnyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke
-
ForumExpertOnLine wrote:
Do you used to turn it on ?
No, but when I see warnings, I treat them as errors and fix them. But then again, I also don't use the stupid window that categorizes warnings and errors and tasks and whatever. I find it totally useless, as it doesn't give them to me in the right order (in my experience, I could be wrong), as it often gives me errors in dependent assemblies when the real problem is in the dependency (I'm talking C# development here basically). I just set the "Show Output" window to true and set the verbosity to minimum. Marc
Marc Clifton wrote:
set the verbosity to minimum.
That's sounds good. Can you tell me how to set the verbosity to minimum ? I didn't find any options.
-
Well thanks for reminding me to check mine. :-D I have that turned off and I use warning level 4. But here's the situation: for my primary library project I have the release build produce an XML documentation file, which results in (currently) 1390 warnings of type 1591: "Missing XML comment for publicly visible type or member '...'" Which sometimes (as I just did) I choose to suppress, but most of the time I don't. I think maybe I should suppress it most of the time. :~
PIEBALDconsult wrote:
"Missing XML comment for publicly visible type or member '...'"
I had this on a "Settings" class. I use
#pragma
to hide it. -
But sometimes it's annoying, mainly when XML comments are turned on.
-
Marc Clifton wrote:
set the verbosity to minimum.
That's sounds good. Can you tell me how to set the verbosity to minimum ? I didn't find any options.
ForumExpertOnLine wrote:
That's sounds good. Can you tell me how to set the verbosity to minimum ? I didn't find any options.
Tools/Options, open "Projects and Solutions", then click on "Build and Run". On the right, there's "MSBuild project build output verbosity". Set it to "Quiet". Then it finally behaves like VS2005. :sigh: Marc
-
ForumExpertOnLine wrote:
That's sounds good. Can you tell me how to set the verbosity to minimum ? I didn't find any options.
Tools/Options, open "Projects and Solutions", then click on "Build and Run". On the right, there's "MSBuild project build output verbosity". Set it to "Quiet". Then it finally behaves like VS2005. :sigh: Marc
Done ! Thanks for that. It looks much interesting than seeing the error window. It shows warnings too and can be fixed on spot. Great suggestion marc.
-
But sometimes it's annoying, mainly when XML comments are turned on.
This is one of the main reasons I insist it's turn on: Every method should be commented without exception.
cheers, Chris Maunder
CodeProject.com : C++ MVP
-
PIEBALDconsult wrote:
"Missing XML comment for publicly visible type or member '...'"
I had this on a "Settings" class. I use
#pragma
to hide it. -
ForumExpertOnLine wrote:
Most of them are unused variable warnings
Why don't you just remove those unused variables then ? If it is an argument of one of your function and you can't remove it (e.g. virtual function), do not name it:
void MyFunction(int)
{
// Code here
}Cédric Moonen Software developer
Charting control [v1.4] OpenGL game tutorial in C++Hey pal, I want your opinions here: http://www.codeproject.com/script/Forums/View.aspx?fid=2605&msg=2661564[^]
Please leave us our small pleasures, they are small, but they are ours! - Mycroft Holmes ^ .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]
-
Hey pal, I want your opinions here: http://www.codeproject.com/script/Forums/View.aspx?fid=2605&msg=2661564[^]
Please leave us our small pleasures, they are small, but they are ours! - Mycroft Holmes ^ .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]
Honnestly, I know that such discussions by mail or on a forum lead to nothing. This is very difficult to talk about something 'serious' for several reasons: 1) A part of the communication is missing: the only thing you see is text on a screen. So, misunderstanding somebody happens very easily. When you talk to somebody, there is much more to the conversion than just the words. 2) It is easier to write something that you don't really think just because you are a bit angry or had a bad day. You just type something on your keyboard and that's it. It's totaly different if you actually had that person in front of you. Perhaps that was said just as a joke, who knows. But I agree it's a bit playing with fire. I think you should simply let it go and stop it before it escalates too far. You know who you are and I can tell you that you are not a shame to your country, it is even the opposite :)
Cédric Moonen Software developer
Charting control [v1.4] OpenGL game tutorial in C++ -
Honnestly, I know that such discussions by mail or on a forum lead to nothing. This is very difficult to talk about something 'serious' for several reasons: 1) A part of the communication is missing: the only thing you see is text on a screen. So, misunderstanding somebody happens very easily. When you talk to somebody, there is much more to the conversion than just the words. 2) It is easier to write something that you don't really think just because you are a bit angry or had a bad day. You just type something on your keyboard and that's it. It's totaly different if you actually had that person in front of you. Perhaps that was said just as a joke, who knows. But I agree it's a bit playing with fire. I think you should simply let it go and stop it before it escalates too far. You know who you are and I can tell you that you are not a shame to your country, it is even the opposite :)
Cédric Moonen Software developer
Charting control [v1.4] OpenGL game tutorial in C++Those two points were excellent pal. It made me think in a way that i hadn't.
Cedric Moonen wrote:
I can tell you that you are not a shame to your country, it is even the opposite [Smile]
Thanks friend, those words were soothing. :)
Please leave us our small pleasures, they are small, but they are ours! - Mycroft Holmes ^ .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]