diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2008-05-19 22:24:38 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2008-05-19 22:24:38 +0000 |
commit | fa74fa3941a3132cb677f6c5ff02634c5e9dd63e (patch) | |
tree | 970aa65617fa394c91ee2cc3b4a7cf7f66f39741 /gcc/tree.c | |
parent | 9479cae3c3e64b2ebde9854acbf17219f00a4e20 (diff) | |
download | gcc-fa74fa3941a3132cb677f6c5ff02634c5e9dd63e.zip gcc-fa74fa3941a3132cb677f6c5ff02634c5e9dd63e.tar.gz gcc-fa74fa3941a3132cb677f6c5ff02634c5e9dd63e.tar.bz2 |
tree.c (substitute_placeholder_in_expr) <tcc_vl_exp>: Minor tweak.
From-SVN: r135591
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -2778,18 +2778,19 @@ substitute_placeholder_in_expr (tree exp, tree obj) { tree copy = NULL_TREE; int i; - int n = TREE_OPERAND_LENGTH (exp); - for (i = 1; i < n; i++) + + for (i = 1; i < TREE_OPERAND_LENGTH (exp); i++) { tree op = TREE_OPERAND (exp, i); - tree newop = SUBSTITUTE_PLACEHOLDER_IN_EXPR (op, obj); - if (newop != op) + tree new_op = SUBSTITUTE_PLACEHOLDER_IN_EXPR (op, obj); + if (new_op != op) { if (!copy) copy = copy_node (exp); - TREE_OPERAND (copy, i) = newop; + TREE_OPERAND (copy, i) = new_op; } } + if (copy) return fold (copy); else |