aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2012-05-25 20:26:11 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2012-05-25 20:26:11 +0000
commit37c59e691e40aa4f278ca985f7fa7ab81a0e545d (patch)
tree4b88d16d1ec638d995e6e57ed4c9c3b58437eff7 /gcc/tree.c
parent13af22d7a0dfc4db342ba39035784ba60e327790 (diff)
downloadgcc-37c59e691e40aa4f278ca985f7fa7ab81a0e545d.zip
gcc-37c59e691e40aa4f278ca985f7fa7ab81a0e545d.tar.gz
gcc-37c59e691e40aa4f278ca985f7fa7ab81a0e545d.tar.bz2
re PR lto/52178 (Ada bootstrap failure in LTO mode)
PR lto/52178 * tree-inline.c (remap_gimple_op_r): Fix handling of FIELD_DECL. * tree.c (RETURN_TRUE_IF_VAR): Do not return true for PLACEHOLDER_EXPR. From-SVN: r187892
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 1ee3f1d..de4a1c0 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -8477,8 +8477,11 @@ variably_modified_type_p (tree type, tree fn)
a variable in FN. */
#define RETURN_TRUE_IF_VAR(T) \
do { tree _t = (T); \
- if (_t && _t != error_mark_node && TREE_CODE (_t) != INTEGER_CST \
- && (!fn || walk_tree (&_t, find_var_from_fn, fn, NULL))) \
+ if (_t != NULL_TREE \
+ && _t != error_mark_node \
+ && TREE_CODE (_t) != INTEGER_CST \
+ && TREE_CODE (_t) != PLACEHOLDER_EXPR \
+ && (!fn || walk_tree (&_t, find_var_from_fn, fn, NULL))) \
return true; } while (0)
if (type == error_mark_node)