gcc: Warnings and Errors

1 
1 13.9 Warning Messages and Error Messages
1 ========================================
1 
1 The GNU compiler can produce two kinds of diagnostics: errors and
1 warnings.  Each kind has a different purpose:
1 
1      "Errors" report problems that make it impossible to compile your
1      program.  GCC reports errors with the source file name and line
1      number where the problem is apparent.
1 
1      "Warnings" report other unusual conditions in your code that _may_
1      indicate a problem, although compilation can (and does) proceed.
1      Warning messages also report the source file name and line number,
1      but include the text 'warning:' to distinguish them from error
1      messages.
1 
1  Warnings may indicate danger points where you should check to make sure
1 that your program really does what you intend; or the use of obsolete
1 features; or the use of nonstandard features of GNU C or C++.  Many
1 warnings are issued only if you ask for them, with one of the '-W'
1 options (for instance, '-Wall' requests a variety of useful warnings).
1 
1  GCC always tries to compile your program if possible; it never
1 gratuitously rejects a program whose meaning is clear merely because
1 (for instance) it fails to conform to a standard.  In some cases,
1 however, the C and C++ standards specify that certain extensions are
1 forbidden, and a diagnostic _must_ be issued by a conforming compiler.
1 The '-pedantic' option tells GCC to issue warnings in such cases;
1 '-pedantic-errors' says to make them errors instead.  This does not mean
1 that _all_ non-ISO constructs get warnings or errors.
1 
1  ⇒Options to Request or Suppress Warnings Warning Options, for
1 more detail on these and related command-line options.
1