2012-06-01 Manuel López-Ibáñez <manu@gcc.gnu.org>
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Jun 2012 08:47:06 +0000 (08:47 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Jun 2012 08:47:06 +0000 (08:47 +0000)
            Jonathan Wakely  <jwakely.gcc@gmail.com>

PR c++/50134
* doc/invoke.texi (Warning Options): Explain purpose and differences
between -Wmissing-prototypes and -Wmissing-declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188103 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/doc/invoke.texi

index 25bf994..1b9b7a7 100644 (file)
@@ -1,3 +1,10 @@
+2012-06-01  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+            Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       PR c++/50134
+       * doc/invoke.texi (Warning Options): Explain purpose and differences
+       between -Wmissing-prototypes and -Wmissing-declarations.
+
 2012-06-01  Christian Bruel  <christian.bruel@st.com>
 
        * gcc.c (save_switch): Add user_p parameter.
index 3ad07f3..eb582b3 100644 (file)
@@ -4416,8 +4416,12 @@ This warning is also enabled by @option{-Wextra}.
 @opindex Wno-missing-prototypes
 Warn if a global function is defined without a previous prototype
 declaration.  This warning is issued even if the definition itself
-provides a prototype.  The aim is to detect global functions that 
-are not declared in header files.
+provides a prototype.  Use this option to detect global functions
+that do not have a matching prototype declaration in a header file.
+This option is not valid for C++ because all function declarations
+provide prototypes and a non-matching declaration will declare an
+overload rather than conflict with an earlier declaration.
+Use @option{-Wmissing-declarations} to detect missing declarations in C++.
 
 @item -Wmissing-declarations
 @opindex Wmissing-declarations
@@ -4425,7 +4429,9 @@ are not declared in header files.
 Warn if a global function is defined without a previous declaration.
 Do so even if the definition itself provides a prototype.
 Use this option to detect global functions that are not declared in
-header files.  In C++, no warnings are issued for function templates,
+header files.  In C, no warnings are issued for functions with previous
+non-prototype declarations; use @option{-Wmissing-prototype} to detect
+missing prototypes.  In C++, no warnings are issued for function templates,
 or for inline functions, or for functions in anonymous namespaces.
 
 @item -Wmissing-field-initializers