From 6cba9fcc2181b0a6a8c0f1dcecb87e9289516653 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sat, 16 Mar 1996 19:23:14 -0500 Subject: [PATCH] (substitute_in_expr, case COMPONENT_REF): Ignore if inner PLACEHOLDER_EXPR has not yet been initialized. From-SVN: r11547 --- gcc/tree.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/tree.c b/gcc/tree.c index cfceb59ad46..a1c7e3e3e99 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -1,5 +1,5 @@ /* Language-independent node constructors for parse phase of GNU compiler. - Copyright (C) 1987, 88, 92, 93, 94, 1995 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 92, 93, 94, 95, 1996 Free Software Foundation, Inc. This file is part of GNU CC. @@ -2286,6 +2286,12 @@ substitute_in_expr (exp, f, r) && TREE_OPERAND (exp, 1) == f) return r; + /* If this expression hasn't been completed let, leave it + alone. */ + if (TREE_CODE (inner) == PLACEHOLDER_EXPR + && TREE_TYPE (inner) == 0) + return exp; + new = fold (build (code, TREE_TYPE (exp), substitute_in_expr (TREE_OPERAND (exp, 0), f, r), TREE_OPERAND (exp, 1))); -- 2.30.2