+2013-08-02 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.
+
2013-08-01 Fabien ChĂȘne <fabien@gcc.gnu.org>
PR c++/54537
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);
}
\f
-/* 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. */
statement = finish_stmt_expr_expr (statement, in_statement_expr);
else if (statement)
statement = finish_expr_stmt (statement);
- else
- finish_stmt ();
return statement;
}
/* Free any declarators allocated. */
obstack_free (&declarator_obstack, p);
-
- /* Finish off the statement. */
- finish_stmt ();
}
/* Some dependent statements (like `if (cond) statement'), are
stmt = build_tm_abort_call (token->location, is_outer);
add_stmt (stmt);
- finish_stmt ();
return stmt;
}
r = add_stmt (expr);
}
- finish_stmt ();
-
return r;
}
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
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
{
cond = maybe_convert_cond (cond);
DO_COND (do_stmt) = cond;
- finish_stmt ();
}
/* Finish a return-statement. The EXPRESSION returned, if any, is as
TREE_NO_WARNING (r) |= no_warning;
r = maybe_cleanup_point_expr_void (r);
r = add_stmt (r);
- finish_stmt ();
return r;
}
*scope_ptr = NULL;
add_stmt (do_poplevel (scope));
}
-
- finish_stmt ();
}
/* Begin a range-for-statement. Returns a new RANGE_FOR_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;
/* ??? See c_end_compound_stmt wrt statement expressions. */
add_stmt (stmt);
- finish_stmt ();
}
/* Finish an asm-statement, whose components are a STRING, some
if (compound_stmt)
finish_compound_stmt (compound_stmt);
- finish_stmt ();
}
/* Build a __transaction_atomic or __transaction_relaxed expression. If