From ee0192a223e13a84120ccecb628d2350e5c53efb Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Tue, 1 Dec 2009 14:22:50 +0000 Subject: tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK to the block of the call when remapping a type. 2009-12-01 Richard Guenther * tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK to the block of the call when remapping a type. From-SVN: r154873 --- gcc/ChangeLog | 5 +++++ gcc/tree-inline.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f4cd281..939b7bc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-12-01 Richard Guenther + + * tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK + to the block of the call when remapping a type. + 2009-12-01 Martin Jambor * cgraph.h (struct cgraph_edge): Reorder fields. Make loop_nest diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 10baf62..3c90941 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -1093,10 +1093,10 @@ copy_tree_body_r (tree *tp, int *walk_subtrees, void *data) /* If EXPR has block defined, map it to newly constructed block. When inlining we want EXPRs without block appear in the block - of function call. */ + of function call if we are not remapping a type. */ if (EXPR_P (*tp)) { - new_block = id->block; + new_block = id->remapping_type_depth == 0 ? id->block : NULL; if (TREE_BLOCK (*tp)) { tree *n; -- cgit v1.1