From 352411927ee72322eb6a99a8b4ff489939b31cdd Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Tue, 10 Jul 2001 09:05:18 -0400 Subject: [PATCH] semantics.c (cp_expand_stmt): Fix for null current_function_return_value. * semantics.c (cp_expand_stmt): Fix for null current_function_return_value. From-SVN: r43900 --- gcc/cp/ChangeLog | 7 +++++++ gcc/cp/semantics.c | 6 ++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 452ba42d679..7473cab405a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2001-07-10 Jason Merrill + + * semantics.c (cp_expand_stmt): Fix for null + current_function_return_value. + 2001-07-10 Jan van Male * call.c (build_op_delete_call): Initialize fn. @@ -7,6 +12,8 @@ (get_primary_binfo): Initialize result. * init.c (build_java_class_ref): Initialize name. +2001-07-09 Erik Rozendaal + * typeck.c (unary_complex_lvalue): Do not duplicate the argument to modify, pre-, or post-increment when used as an lvalue and when the argument has side-effects. diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 66f36ab2c5c..c82d2911381 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -2156,8 +2156,10 @@ cp_expand_stmt (t) switch (TREE_CODE (t)) { case CLEANUP_STMT: - /* Don't destroy the chosen named return value. */ - if (CLEANUP_DECL (t) != current_function_return_value) + if (CLEANUP_DECL (t) + && CLEANUP_DECL (t) == current_function_return_value) + /* Don't destroy the chosen named return value. */; + else genrtl_decl_cleanup (CLEANUP_DECL (t), CLEANUP_EXPR (t)); break; -- 2.30.2