From: Jason Merrill Date: Tue, 10 Jul 2001 13:05:18 +0000 (-0400) Subject: semantics.c (cp_expand_stmt): Fix for null current_function_return_value. X-Git-Tag: prereleases/libstdc++-3.0.95~3371 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=352411927ee72322eb6a99a8b4ff489939b31cdd;p=thirdparty%2Fgcc.git 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 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 452ba42d6794..7473cab405a1 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 66f36ab2c5c0..c82d29113817 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;