From: Sam James Date: Tue, 7 Oct 2025 00:51:55 +0000 (+0100) Subject: doc: mention -Wmaybe-uninitialized vs CCP X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3f8414d18c4b6644fcd414cd8d89427fbe1f3d8;p=thirdparty%2Fgcc.git doc: mention -Wmaybe-uninitialized vs CCP CCP interacts poorly with -Wmaybe-uninitialized in some cases by assuming a value which stops us warning about it (false negatives). Inform users about this infamous interaction. gcc/ChangeLog: PR tree-optimization/18501 * doc/invoke.texi (-Wmaybe-uninitialized): Mention interaction with CCP. --- diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index f93fe43733d..8802d416b30 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -8375,7 +8375,10 @@ known to read the object.) Annotating the function with attribute the object and avoids the warning (@pxref{Common Function Attributes}). These warnings are only possible in optimizing compilation, because otherwise -GCC does not keep track of the state of variables. +GCC does not keep track of the state of variables. On the other hand, +@option{-Wmaybe-uninitialized} is known not to warn in many situations +(false negatives) due to optimizations taking advantage of undefinedness +of uninitialized uses like constant propagation. These warnings are made optional because GCC may not be able to determine when the code is correct in spite of appearing to have an error. Here is one