From 330446eb5202e96528615a8961ecc12b956865bc Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Tue, 6 Jun 1995 18:55:28 -0400 Subject: [PATCH] (expand_expr, case PLACEHOLDER_EXPR): Consider two types identical if their TYPE_MAIN_VARIANTs are the same. From-SVN: r9897 --- gcc/expr.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gcc/expr.c b/gcc/expr.c index d4fc8fe8176..1bf40c8ce88 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -4366,7 +4366,8 @@ expand_expr (exp, target, tmode, modifier) tree old_list = placeholder_list; for (object = TREE_PURPOSE (placeholder_list); - TREE_TYPE (object) != type + (TYPE_MAIN_VARIANT (TREE_TYPE (object)) + != TYPE_MAIN_VARIANT (type)) && (TREE_CODE_CLASS (TREE_CODE (object)) == 'r' || TREE_CODE_CLASS (TREE_CODE (object)) == '1' || TREE_CODE_CLASS (TREE_CODE (object)) == '2' @@ -4374,7 +4375,9 @@ expand_expr (exp, target, tmode, modifier) object = TREE_OPERAND (object, 0)) ; - if (object && TREE_TYPE (object) == type) + if (object != 0 + && (TYPE_MAIN_VARIANT (TREE_TYPE (object)) + == TYPE_MAIN_VARIANT (type))) { /* Expand this object skipping the list entries before it was found in case it is also a PLACEHOLDER_EXPR. -- 2.30.2