From 6b4e83912838357e29292b57bc5c5b61f8693f75 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 25 Mar 1998 10:54:42 +0000 Subject: [PATCH] expr.c (cplus_expand_expr): Only do PCC_STATIC_STRUCT_RETURN thing if (aggregate_value_p (type)). * expr.c (cplus_expand_expr): Only do PCC_STATIC_STRUCT_RETURN thing if (aggregate_value_p (type)). From-SVN: r18823 --- gcc/cp/ChangeLog | 3 +++ gcc/cp/expr.c | 10 ++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6fd67544e882..9bed584996c0 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ Wed Mar 25 02:01:02 1998 Jason Merrill + * expr.c (cplus_expand_expr): Only do PCC_STATIC_STRUCT_RETURN thing + if (aggregate_value_p (type)). + * decl2.c (constructor_name_full): Handle TYPENAME_TYPE. Tue Mar 24 16:12:01 1998 Mark Mitchell diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c index aa229d4330bb..50159cdbefd1 100644 --- a/gcc/cp/expr.c +++ b/gcc/cp/expr.c @@ -114,11 +114,13 @@ cplus_expand_expr (exp, target, tmode, modifier) } else { -#ifdef PCC_STATIC_STRUCT_RETURN - pcc_struct_return = 1; - call_target = 0; -#else call_target = target; +#ifdef PCC_STATIC_STRUCT_RETURN + if (aggregate_value_p (type)) + { + pcc_struct_return = 1; + call_target = 0; + } #endif } -- 2.43.5