diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-iterator.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 05a4925..c82e892 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2012-04-17 Tom de Vries <tom@codesourcery.com> + + * tree-iterator.c (append_to_statement_list_1): Handle case that *list_p + is not a STMT_LIST. + 2012-04-17 Uros Bizjak <ubizjak@gmail.com> PR target/53020 diff --git a/gcc/tree-iterator.c b/gcc/tree-iterator.c index 44b6bed..e4175fd 100644 --- a/gcc/tree-iterator.c +++ b/gcc/tree-iterator.c @@ -74,6 +74,13 @@ append_to_statement_list_1 (tree t, tree *list_p) } *list_p = list = alloc_stmt_list (); } + else if (TREE_CODE (list) != STATEMENT_LIST) + { + tree first = list; + *list_p = list = alloc_stmt_list (); + i = tsi_last (list); + tsi_link_after (&i, first, TSI_CONTINUE_LINKING); + } i = tsi_last (list); tsi_link_after (&i, t, TSI_CONTINUE_LINKING); |