>From: "John Maddock" <[EMAIL PROTECTED]> > Can whoever added this one, please add it to the docs (as a feature macro). > > Is it possible to test for this? If so can a test program be supplied > please - the test program should compile and run only if the feature is > available - see one of the boost_has_XXX.cxx files for examples.
I've looked at the test-programs, there, but it wasn't clear to me in what way it is preferred that the program fails to run (e.g. throwing an exception), or if returning a non-zero value is enough. In any case, the program below detects presence of NRVO, by returning zero, or greater than zero if NRVO is not present. Usage: int result=boost_has_nrvo::test(); 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 Regards, Terje _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost