re PR c++/16190 (-Wnon-virtual-dtor, in -Wall, silenced only by pessimizing code)

PR c++/16190
        * c-opts.c (c_common_handle_option): Don't include
        -Wnon-virtual-dtor in -Wall; enable if -Weffc++.
        * doc/invoke.texi (C++ Dialect Options): Document that
        -Wnon-virtual-dtor is no longer included in -Wall.

From-SVN: r110085
This commit is contained in:
Gabriel Dos Reis 2006-01-22 02:38:03 +00:00 committed by Gabriel Dos Reis
parent 0e686aa6f7
commit efee9ded41
3 changed files with 16 additions and 3 deletions

View file

@ -1,3 +1,11 @@
2006-01-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
PR c++/16190
* c-opts.c (c_common_handle_option): Don't include
-Wnon-virtual-dtor in -Wall; enable if -Weffc++.
* doc/invoke.texi (C++ Dialect Options): Document that
-Wnon-virtual-dtor is no longer included in -Wall.
2006-01-21 Joseph S. Myers <joseph@codesourcery.com>
* gcov.c (print_version), gcov-dump.c (print_version),

View file

@ -409,7 +409,6 @@ c_common_handle_option (size_t scode, const char *arg, int value)
else
{
/* C++-specific warnings. */
warn_nonvdtor = value;
warn_reorder = value;
warn_nontemplate_friend = value;
}
@ -539,6 +538,12 @@ c_common_handle_option (size_t scode, const char *arg, int value)
warn_write_strings = value;
break;
case OPT_Weffc__:
warn_ecpp = value;
if (value)
warn_nonvdtor = true;
break;
case OPT_ansi:
if (!c_dialect_cxx ())
set_std_c89 (false, true);

View file

@ -1736,8 +1736,8 @@ public static member functions.
@item -Wnon-virtual-dtor @r{(C++ only)}
@opindex Wnon-virtual-dtor
Warn when a class appears to be polymorphic, thereby requiring a virtual
destructor, yet it declares a non-virtual one.
This warning is enabled by @option{-Wall}.
destructor, yet it declares a non-virtual one. This warning is also
enabled if -Weffc++ is specified.
@item -Wreorder @r{(C++ only)}
@opindex Wreorder