diff options
author | Jason Merrill <jason@redhat.com> | 2001-08-10 10:01:33 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2001-08-10 10:01:33 -0400 |
commit | 07b2f2fd6efdf33ab13eb31fc8ea38668dbf6ed6 (patch) | |
tree | d9f451da73883db76d0425e08382fce4bb154737 /gcc/c-semantics.c | |
parent | 67070ffeb0f10bcc841e87756d18eb85de1ab8a8 (diff) | |
download | gcc-07b2f2fd6efdf33ab13eb31fc8ea38668dbf6ed6.zip gcc-07b2f2fd6efdf33ab13eb31fc8ea38668dbf6ed6.tar.gz gcc-07b2f2fd6efdf33ab13eb31fc8ea38668dbf6ed6.tar.bz2 |
c-common.h (RETURN_NULLIFIED_P): Lose.
* c-common.h (RETURN_NULLIFIED_P): Lose.
* c-semantics.c (genrtl_return_stmt): Don't check it.
Support named return value optimization for inlines, too.
* decl.c (finish_function): Nullify returns here.
* semantics.c (genrtl_start_function): Not here.
(cp_expand_stmt): Don't mess with CLEANUP_STMTs.
(nullify_returns_r): No longer static. Just clear RETURN_EXPR.
Also nullify the CLEANUP_STMT for the nrv.
* cp-tree.h: Declare it.
* optimize.c (declare_return_variable): Replace the nrv with the
return variable.
* typeck.c (check_return_expr): Be more flexible on alignment check.
Ignore cv-quals when checking for a matching type.
From-SVN: r44762
Diffstat (limited to 'gcc/c-semantics.c')
-rw-r--r-- | gcc/c-semantics.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/gcc/c-semantics.c b/gcc/c-semantics.c index 2ee2647..e05ae76 100644 --- a/gcc/c-semantics.c +++ b/gcc/c-semantics.c @@ -462,13 +462,7 @@ genrtl_return_stmt (stmt) { tree expr; - /* If RETURN_NULLIFIED_P is set, the frontend has arranged to set up - the return value separately, so just return the return value - itself. This is used for the C++ named return value optimization. */ - if (RETURN_NULLIFIED_P (stmt)) - expr = DECL_RESULT (current_function_decl); - else - expr = RETURN_EXPR (stmt); + expr = RETURN_EXPR (stmt); emit_line_note (input_filename, lineno); if (!expr) |