Hi, This is the patch for the gcc12 changes per your request.
Kees provided most of the wording. Please take a look and let’s know whether it’s good for commit? thanks. Qing ================================================ From: qing zhao <qing.z...@oracle.com> Date: Tue, 28 Sep 2021 12:01:42 -0700 Subject: [PATCH] gcc-12/changes.html: Uninitialized stack variables initialization update * htdocs/gcc-12/changes.html (Eliminating uninitialized variables): Item about the support for automatic static variable initialization. --- htdocs/gcc-12/changes.html | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html index 1f156a9..8e2979c 100644 --- a/htdocs/gcc-12/changes.html +++ b/htdocs/gcc-12/changes.html @@ -245,6 +245,25 @@ a work-in-progress.</p> <!-- .................................................................. --> <h2>Other significant improvements</h2> +<h3 id="uninitialized">Eliminating uninitialized variables</h3> + +<ul> + <li>GCC can now initialize all stack variables implicitly, including + padding. This is intended to eliminate all classes of uninitialized + stack variable flaws. Lack of explicit initialization will still + warn when <code>-Wuninitialized</code> is active. For best + debugging, use of the new command-line option + <code>-ftrivial-auto-var-init=pattern</code> can be used to fill + variables with a repeated 0xFE pattern, which tends to illuminate + many bugs (e.g. pointers receive invalid addresses, sizes and indices + are very large). For best production results, the new command-line + option <code>-ftrivial-auto-var-init=zero</code> can be used to + fill variables with 0x00, which tends to provide a safer state for + bugs (e.g. pointers are NULL, strings are NULL filled, and sizes + and indices are 0). + </li> +</ul> + <h3 id="debug">Debugging formats</h3> <ul> -- 1.9.1