https://gcc.gnu.org/g:5ebfaf2d4994c124ce81aa0abd7eaa1529644749
commit r15-2703-g5ebfaf2d4994c124ce81aa0abd7eaa1529644749 Author: Marek Polacek <pola...@redhat.com> Date: Thu Aug 1 10:35:38 2024 -0400 c++: Move -Wdangling-reference to -Wextra Despite a number of mitigations (don't warn for std::span-like classes, lambdas, adding [[gnu::no_dangling]], etc.), the warning still seems to cause some grief. Let's move the warning to -Wextra, then. gcc/c-family/ChangeLog: * c.opt (Wdangling-reference): Move from -Wall to -Wextra. gcc/ChangeLog: * doc/invoke.texi: Document that -Wdangling-reference is enabled by -Wextra. Diff: --- gcc/c-family/c.opt | 2 +- gcc/doc/invoke.texi | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index a52682d835ce..979f17a7e323 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -604,7 +604,7 @@ C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_dangling_pointer) Warn Warn for uses of pointers to auto variables whose lifetime has ended. Wdangling-reference -C++ ObjC++ Var(warn_dangling_reference) Warning LangEnabledBy(C++ ObjC++, Wall) +C++ ObjC++ Var(warn_dangling_reference) Warning LangEnabledBy(C++ ObjC++, Wextra) Warn when a reference is bound to a temporary whose lifetime has ended. Wdate-time diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 54ecd9a00eb4..0fe99ca8ef6e 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -3962,7 +3962,7 @@ that has a pointer data member and a trivial destructor. The warning can be disabled by using the @code{gnu::no_dangling} attribute (@pxref{C++ Attributes}). -This warning is enabled by @option{-Wall}. +This warning is enabled by @option{-Wextra}. @opindex Wdelete-non-virtual-dtor @opindex Wno-delete-non-virtual-dtor @@ -6481,6 +6481,7 @@ name is still supported, but the newer name is more descriptive.) -Wcalloc-transposed-args -Wcast-function-type -Wclobbered +-Wdangling-reference @r{(C++ only)} -Wdeprecated-copy @r{(C++ and Objective-C++ only)} -Wempty-body -Wenum-conversion @r{(only for C/ObjC)}