Commit 90e02569 by Richard Guenther Committed by Richard Biener

semantics.c (simplify_aggr_init_exprs_r): Remove.

2008-10-21  Richard Guenther  <rguenther@suse.de>

	* semantics.c (simplify_aggr_init_exprs_r): Remove.
	(expand_or_defer_fn): Do not walk the function body to
	simplify aggr_init_exprs.

From-SVN: r141260
parent 48ef7690
2008-10-21 Richard Guenther <rguenther@suse.de>
* semantics.c (simplify_aggr_init_exprs_r): Remove.
(expand_or_defer_fn): Do not walk the function body to
simplify aggr_init_exprs.
2008-10-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/37004
......
......@@ -54,7 +54,6 @@ along with GCC; see the file COPYING3. If not see
degenerate form of parsing. */
static tree maybe_convert_cond (tree);
static tree simplify_aggr_init_exprs_r (tree *, int *, void *);
static tree finalize_nrv_r (tree *, int *, void *);
......@@ -3056,34 +3055,6 @@ finish_offsetof (tree expr)
return fold_offsetof (expr, NULL_TREE);
}
/* Called from expand_body via walk_tree. Replace all AGGR_INIT_EXPRs
with equivalent CALL_EXPRs. */
static tree
simplify_aggr_init_exprs_r (tree* tp,
int* walk_subtrees,
void* data ATTRIBUTE_UNUSED)
{
/* We don't need to walk into types; there's nothing in a type that
needs simplification. (And, furthermore, there are places we
actively don't want to go. For example, we don't want to wander
into the default arguments for a FUNCTION_DECL that appears in a
CALL_EXPR.) */
if (TYPE_P (*tp))
{
*walk_subtrees = 0;
return NULL_TREE;
}
/* Only AGGR_INIT_EXPRs are interesting. */
else if (TREE_CODE (*tp) != AGGR_INIT_EXPR)
return NULL_TREE;
simplify_aggr_init_expr (tp);
/* Keep iterating. */
return NULL_TREE;
}
/* Replace the AGGR_INIT_EXPR at *TP with an equivalent CALL_EXPR. This
function is broken out from the above for the benefit of the tree-ssa
project. */
......@@ -3206,11 +3177,6 @@ expand_or_defer_fn (tree fn)
gcc_assert (gimple_body (fn));
/* Replace AGGR_INIT_EXPRs with appropriate CALL_EXPRs. */
cp_walk_tree_without_duplicates (&DECL_SAVED_TREE (fn),
simplify_aggr_init_exprs_r,
NULL);
/* If this is a constructor or destructor body, we have to clone
it. */
if (maybe_clone_body (fn))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment