OSDN Git Service

PR debug/47106
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Feb 2011 05:44:38 +0000 (05:44 +0000)
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Feb 2011 05:44:38 +0000 (05:44 +0000)
PR debug/47402
* tree-inline.c (declare_return_variable): Add result decl to
local decls only once.
* gimple-low.c (record_vars_into): Mark newly-created variables
as referenced.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169514 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/gimple-low.c
gcc/tree-inline.c

index 9ee08df..7eea885 100644 (file)
@@ -1,5 +1,14 @@
 2011-02-02  Alexandre Oliva  <aoliva@redhat.com>
 
+       PR debug/47106
+       PR debug/47402
+       * tree-inline.c (declare_return_variable): Add result decl to
+       local decls only once.
+       * gimple-low.c (record_vars_into): Mark newly-created variables
+       as referenced.
+
+2011-02-02  Alexandre Oliva  <aoliva@redhat.com>
+
        PR debug/47498
        PR debug/47501
        PR debug/45136
index 2c585e3..4e49241 100644 (file)
@@ -907,6 +907,8 @@ record_vars_into (tree vars, tree fn)
 
       /* Record the variable.  */
       add_local_decl (cfun, var);
+      if (gimple_referenced_vars (cfun))
+       add_referenced_var (var);
     }
 
   if (fn != current_function_decl)
index 24a6dd0..0a10df7 100644 (file)
@@ -2864,7 +2864,6 @@ declare_return_variable (copy_body_data *id, tree return_slot, tree modify_dest,
     }
 
   DECL_SEEN_IN_BIND_EXPR_P (var) = 1;
-  add_local_decl (DECL_STRUCT_FUNCTION (caller), var);
 
   /* Do not have the rest of GCC warn about this variable as it should
      not be visible to the user.  */