Kastil wrote: > I was hoping for something which will describe these warnings. Most diagnostics have a command line switch that can be used to enable or disable them, and each is documented in the manual: <http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html> Note that this node only documents generic options, there are also language-specific options: <http://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html> <http://gcc.gnu.org/onlinedocs/cpp/Invocation.html> <http://gcc.gnu.org/onlinedocs/gfortran/Error-and-Warning-Options.html> <http://gcc.gnu.org/onlinedocs/gcj/Warnings.html> <http://gcc.gnu.org/onlinedocs/gcc/Objective_002dC-and-Objective_002dC_002b_002b-Dialect-Options.html> If you're using a recent version of gcc (>= 4.2.x I believe) you can use -fdiagnostics-show-option to have the compiler tell you the name of the -Wfoo option corresponding to each diagnostic it prints -- for those that are controllable by an option. > Some think > that will tell me what I have done wrong in my program and why gcc > produced this warning. But that is a very different prospect. It's one thing to document in general terms the intent behind a given diagnostic, but it's a very different thing to apply that to a specific instance of a warning in a specific piece of code. There is no way that any document is ever going to be able to tell you with specificity what each message means in the context of your code. That requires knowledge of your code, knowledge of the relevant ISO language standards, and knowledge of the compiler. > Now when gcc writes me some warning I spend a lot of time trying to figure > out, what I have done wrong (or what could be done better). I am looking Try the relevant C and C++ FAQs: <http://c-faq.com/> <http://www.parashift.com/c++-faq-lite/> Brian