[C++ Patch] Remove finish_stmt

Paolo Carlini paolo.carlini@oracle.com
Sun Jun 16 17:21:00 GMT 2013


Hi,

lately doesn't appear to accomplish much. Tested x86_64-linux.

Thanks,
Paolo.

////////////////////////
-------------- next part --------------
2013-06-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* cp-tree.h (finish_stmt): Do not declare.
	* decl.c (finish_stmt): Do not define.
	* parser.c (cp_parser_expression_statement,
	cp_parser_declaration_statement,
	cp_parser_transaction_cancel): Don't call finish_stmt.
	* semantics.c (finish_expr_stmt, finish_if_stmt,
	finish_while_stmt, finish_do_stmt, finish_return_stmt,
	finish_for_stmt, finish_switch_stmt, finish_compound_stmt,
	finish_transaction_stmt): Likewise.
-------------- next part --------------
Index: cp-tree.h
===================================================================
--- cp-tree.h	(revision 200134)
+++ cp-tree.h	(working copy)
@@ -5212,7 +5212,6 @@ extern tree grokmethod				(cp_decl_specifier_seq *
 extern void maybe_register_incomplete_var	(tree);
 extern void maybe_commonize_var			(tree);
 extern void complete_vars			(tree);
-extern void finish_stmt				(void);
 extern tree static_fn_type			(tree);
 extern void revert_static_member_fn		(tree);
 extern void fixup_anonymous_aggr		(tree);
Index: decl.c
===================================================================
--- decl.c	(revision 200134)
+++ decl.c	(working copy)
@@ -14273,13 +14273,6 @@ cxx_maybe_build_cleanup (tree decl, tsubst_flags_t
 }
 
 

-/* When a stmt has been parsed, this function is called.  */
-
-void
-finish_stmt (void)
-{
-}
-
 /* Return the FUNCTION_TYPE that corresponds to MEMFNTYPE, which can be a
    FUNCTION_DECL, METHOD_TYPE, FUNCTION_TYPE, pointer or reference to
    METHOD_TYPE or FUNCTION_TYPE, or pointer to member function.  */
Index: parser.c
===================================================================
--- parser.c	(revision 200134)
+++ parser.c	(working copy)
@@ -9295,8 +9295,6 @@ cp_parser_expression_statement (cp_parser* parser,
     statement = finish_stmt_expr_expr (statement, in_statement_expr);
   else if (statement)
     statement = finish_expr_stmt (statement);
-  else
-    finish_stmt ();
 
   return statement;
 }
@@ -10351,9 +10349,6 @@ cp_parser_declaration_statement (cp_parser* parser
 
   /* Free any declarators allocated.  */
   obstack_free (&declarator_obstack, p);
-
-  /* Finish off the statement.  */
-  finish_stmt ();
 }
 
 /* Some dependent statements (like `if (cond) statement'), are
@@ -28410,7 +28405,6 @@ cp_parser_transaction_cancel (cp_parser *parser)
 
   stmt = build_tm_abort_call (token->location, is_outer);
   add_stmt (stmt);
-  finish_stmt ();
 
   return stmt;
 }
Index: semantics.c
===================================================================
--- semantics.c	(revision 200134)
+++ semantics.c	(working copy)
@@ -630,8 +630,6 @@ finish_expr_stmt (tree expr)
       r = add_stmt (expr);
     }
 
-  finish_stmt ();
-
   return r;
 }
 
@@ -696,7 +694,6 @@ finish_if_stmt (tree if_stmt)
   tree scope = IF_SCOPE (if_stmt);
   IF_SCOPE (if_stmt) = NULL;
   add_stmt (do_poplevel (scope));
-  finish_stmt ();
 }
 
 /* Begin a while-statement.  Returns a newly created WHILE_STMT if
@@ -729,7 +726,6 @@ void
 finish_while_stmt (tree while_stmt)
 {
   WHILE_BODY (while_stmt) = do_poplevel (WHILE_BODY (while_stmt));
-  finish_stmt ();
 }
 
 /* Begin a do-statement.  Returns a newly created DO_STMT if
@@ -767,7 +763,6 @@ finish_do_stmt (tree cond, tree do_stmt)
 {
   cond = maybe_convert_cond (cond);
   DO_COND (do_stmt) = cond;
-  finish_stmt ();
 }
 
 /* Finish a return-statement.  The EXPRESSION returned, if any, is as
@@ -804,7 +799,6 @@ finish_return_stmt (tree expr)
   TREE_NO_WARNING (r) |= no_warning;
   r = maybe_cleanup_point_expr_void (r);
   r = add_stmt (r);
-  finish_stmt ();
 
   return r;
 }
@@ -930,8 +924,6 @@ finish_for_stmt (tree for_stmt)
       *scope_ptr = NULL;
       add_stmt (do_poplevel (scope));
     }
-
-  finish_stmt ();
 }
 
 /* Begin a range-for-statement.  Returns a new RANGE_FOR_STMT.
@@ -1065,7 +1057,6 @@ finish_switch_stmt (tree switch_stmt)
   SWITCH_STMT_BODY (switch_stmt) =
     pop_stmt_list (SWITCH_STMT_BODY (switch_stmt));
   pop_switch ();
-  finish_stmt ();
 
   scope = SWITCH_STMT_SCOPE (switch_stmt);
   SWITCH_STMT_SCOPE (switch_stmt) = NULL;
@@ -1287,7 +1278,6 @@ finish_compound_stmt (tree stmt)
 
   /* ??? See c_end_compound_stmt wrt statement expressions.  */
   add_stmt (stmt);
-  finish_stmt ();
 }
 
 /* Finish an asm-statement, whose components are a STRING, some
@@ -5197,7 +5187,6 @@ finish_transaction_stmt (tree stmt, tree compound_
 
   if (compound_stmt)
     finish_compound_stmt (compound_stmt);
-  finish_stmt ();
 }
 
 /* Build a __transaction_atomic or __transaction_relaxed expression.  If


More information about the Gcc-patches mailing list