Patchwork [pph] Merge inline function definitions. (issue5677058)

login
register
mail settings
Submitter Lawrence Crowl
Date Feb. 16, 2012, 11:56 p.m.
Message ID <CAGqM8fazvYxvUuWzZ-s5mzNbDvxVZMbSTCfsBywfKmf7j=jjvw@mail.gmail.com>
Download mbox | patch
Permalink /patch/141716/
State New
Headers show

Comments

Lawrence Crowl - Feb. 16, 2012, 11:56 p.m.
On 2/16/12, Diego Novillo <dnovillo@google.com> wrote:
> With this patch, I'm getting:
>
> gcc/cp/pph-in.c: In function 'tree_node* pph_in_tree(pph_stream*)':
> gcc/cp/pph-in.c:1694:70: error: 'decl_declared_inline' may be used
> uninitialized in this function
> [-Werror=maybe-uninitialized]gcc/cp/pph-in.c:1644:8: note:
> 'decl_declared_inline' was declared here
> gcc/cp/pph-in.c:1683:75: error: 'decl_comdat_group' may be used
> uninitialized in this function
> [-Werror=maybe-uninitialized]gcc/cp/pph-in.c:1643:8: note:
> 'decl_comdat_group' was declared here
> gcc/cp/pph-in.c:1682:50: error: 'decl_comdat' may be used
> uninitialized in this function
> [-Werror=maybe-uninitialized]gcc/cp/pph-in.c:1642:8: note:
> 'decl_comdat' was declared here
> cc1plus: all warnings being treated as errors
> make: *** [cp/pph-in.o] Error 1
>
> Could you take a look?

This patch avoids a false "used unititalized" error by assigning
values soon to be overwritten.

Tested on x64.

Patch

Index: gcc/cp/ChangeLog.pph

2012-02-16   Lawrence Crowl  <crowl@google.com>

	* pph-in.c (pph_in_merge_lang_indep_tree_body): Avoid a false "used
	uninitialized" error message.

Index: gcc/cp/pph-in.c
===================================================================
--- gcc/cp/pph-in.c	(revision 184290)
+++ gcc/cp/pph-in.c	(working copy)
@@ -1639,10 +1639,10 @@  static void
 pph_in_merge_lang_indep_tree_body (pph_stream *stream, tree expr)
 {
   enum tree_code code = TREE_CODE (expr);
-  bool decl_comdat;
-  tree decl_comdat_group;
-  bool decl_declared_inline;
-  tree decl_result;
+  bool decl_comdat = false;
+  tree decl_comdat_group = NULL;
+  bool decl_declared_inline = false;
+  tree decl_result = NULL;

   if (CODE_CONTAINS_STRUCT (code, TS_DECL_WITH_VIS))
     {