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


Reply via email to