Patchwork Go patch committed: Keep up with main compiler

login
register
mail settings
Submitter Ian Taylor
Date Sept. 20, 2012, 5:33 p.m.
Message ID <mcrr4pwppjo.fsf@google.com>
Download mbox | patch
Permalink /patch/185436/
State New
Headers show

Comments

Ian Taylor - Sept. 20, 2012, 5:33 p.m.
This patch to the Go frontend is really from Martin Jambor.  It adjusts
the Go frontend for changes in the main body of the compiler.  This code
in the Go frontend is slated to move out of gcc/go/gofrontend into
gcc/go, hopefully sooner rather than later.  Bootstrapped and ran Go
testsuite on x86_64-unknown-linux-gnu.  Committed to mainline.

Ian

Patch

diff -r fb054e3636c2 go/gogo-tree.cc
--- a/go/gogo-tree.cc	Thu Sep 20 09:28:23 2012 -0700
+++ b/go/gogo-tree.cc	Thu Sep 20 10:02:17 2012 -0700
@@ -476,7 +476,6 @@ 
 
   DECL_SAVED_TREE(fndecl) = init_stmt_list;
 
-  current_function_decl = fndecl;
   if (DECL_STRUCT_FUNCTION(fndecl) == NULL)
     push_struct_function(fndecl);
   else
@@ -487,7 +486,6 @@ 
 
   cgraph_add_new_function(fndecl, false);
 
-  current_function_decl = NULL_TREE;
   pop_cfun();
 }
 
@@ -864,17 +862,13 @@ 
 	      // means that we need an fndecl.
 	      if (init_fndecl == NULL_TREE)
 		init_fndecl = this->initialization_function_decl();
-	      current_function_decl = init_fndecl;
 	      if (DECL_STRUCT_FUNCTION(init_fndecl) == NULL)
 		push_struct_function(init_fndecl);
 	      else
 		push_cfun(DECL_STRUCT_FUNCTION(init_fndecl));
-
 	      tree var_decl = is_sink ? NULL_TREE : vec[i];
 	      var_init_tree = no->var_value()->get_init_block(this, NULL,
 							      var_decl);
-
-	      current_function_decl = NULL_TREE;
 	      pop_cfun();
 	    }
 
@@ -1126,15 +1120,12 @@ 
 		cfun->function_end_locus =
                   func->block()->end_location().gcc_location();
 
-		current_function_decl = decl;
-
 		func->build_tree(gogo, this);
 
 		gimplify_function_tree(decl);
 
 		cgraph_finalize_function(decl, true);
 
-		current_function_decl = NULL_TREE;
 		pop_cfun();
 	      }
 	  }