// (C) Copyright Terje Slettebo 2001. // (C) Copyright John Maddock 2001. // Use, modification and distribution are subject to the // Boost Software License, Version 1.0. (See accompanying file // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // See http://www.boost.org/libs/config for most recent version. // MACRO: BOOST_HAS_NRVO // TITLE: Named return value optimisation. // DESCRIPTION: Named return value optimisation. namespace boost_has_nrvo { class test_class { public: test_class() {} test_class(const test_class &other) { ++copy_count; } static int copy_count; }; int test_class::copy_count; test_class f() { test_class nrv; return nrv; } int test() { test_class::copy_count=0; f(); return test_class::copy_count; } } // namespace boost_has_nrvo