From d6b2c474747305341ffe3f4c6fdc4f1fee4a47d1 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Mon, 11 Feb 2002 10:24:37 -0500 Subject: [PATCH] mention NRVO From-SVN: r49677 --- gcc/cp/NEWS | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gcc/cp/NEWS b/gcc/cp/NEWS index a55b484491a..869ba057b2d 100644 --- a/gcc/cp/NEWS +++ b/gcc/cp/NEWS @@ -44,6 +44,18 @@ any cleanup for that parameter is performed in the caller, as specified by the ia64 C++ ABI, rather than the called function as before. +* G++ now supports the "named return value optimization": for code like + + A f () { + A a; + ... + return a; + } + + G++ will allocate 'a' in the return value slot, so that the return + becomes a no-op. For this to work, all return statements in the function + must return the same variable. + *** Changes in GCC 3.0: * Support for guiding declarations has been removed.