On 9/28/21 2:31 PM, Qing Zhao via Gcc-patches wrote:
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).

The "use ... can be used" in the sentence

  For best debugging, use of the new command-line option
  -ftrivial-auto-var-init=pattern can be used...

reads a bit awkward.  Following the phrasing of the second such
sentence would look better:

  To aid in debugging, the new command-line option
  -ftrivial-auto-var-init=pattern can be used...

Martin

+  </li>
+</ul>
+
  <h3 id="debug">Debugging formats</h3>
<ul>


Reply via email to