https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105056

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Since we require C++11, why don't we use NSDMI instead and then if another
constructor gets added you don't need to change that constructor also?

e.g.
diff --git a/gcc/tree-predcom.cc b/gcc/tree-predcom.cc
index e4aea7cdcb4..89baf69dc79 100644
--- a/gcc/tree-predcom.cc
+++ b/gcc/tree-predcom.cc
@@ -367,20 +367,20 @@ enum ref_step_type

 struct component
 {
-  component (bool es) : eliminate_store_p (es), next (NULL) {}
+  component (bool es) : eliminate_store_p (es) {}

   /* The references in the component.  */
   auto_vec<dref> refs;

   /* What we know about the step of the references in the component.  */
-  enum ref_step_type comp_step;
+  enum ref_step_type comp_step = RS_ANY;

   /* True if all references in component are stores and we try to do
      intra/inter loop iteration dead store elimination.  */
   bool eliminate_store_p;

   /* Next component in the list.  */
-  struct component *next;
+  struct component *next = NULL;
 };

 /* A class to encapsulate the global states used for predictive

Reply via email to