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