From: Richard Kenner Date: Tue, 6 Jun 1995 22:55:28 +0000 (-0400) Subject: (expand_expr, case PLACEHOLDER_EXPR): Consider two types identical if X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=330446eb5202e96528615a8961ecc12b956865bc;p=gcc.git (expand_expr, case PLACEHOLDER_EXPR): Consider two types identical if their TYPE_MAIN_VARIANTs are the same. From-SVN: r9897 --- 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.