diff options
author | Anas Nashif <anas.nashif@intel.com> | 2013-08-26 08:15:55 -0400 |
---|---|---|
committer | Anas Nashif <anas.nashif@intel.com> | 2013-08-26 08:15:55 -0400 |
commit | bb4dd8289b351fae6b55e303f189127a394a1edd (patch) | |
tree | 77c9c35a31b1459dd7988c2448e797d142530c41 /libs/thread/test/test_6174.cpp | |
parent | 1a78a62555be32868418fe52f8e330c9d0f95d5a (diff) | |
download | boost-bb4dd8289b351fae6b55e303f189127a394a1edd.tar.gz boost-bb4dd8289b351fae6b55e303f189127a394a1edd.tar.bz2 boost-bb4dd8289b351fae6b55e303f189127a394a1edd.zip |
Imported Upstream version 1.51.0upstream/1.51.0
Diffstat (limited to 'libs/thread/test/test_6174.cpp')
-rw-r--r-- | libs/thread/test/test_6174.cpp | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/libs/thread/test/test_6174.cpp b/libs/thread/test/test_6174.cpp index b3c14ecacf..cd7ed4e764 100644 --- a/libs/thread/test/test_6174.cpp +++ b/libs/thread/test/test_6174.cpp @@ -1,3 +1,8 @@ +// Copyright (C) 2010 Vicente Botet +// +// Distributed under 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) + #include <boost/thread.hpp> @@ -5,26 +10,32 @@ #ifndef BOOST_NO_RVALUE_REFERENCES struct MovableButNonCopyable { -#ifndef BOOST_NO_DEFAULTED_FUNCTIONS - MovableButNonCopyable() = default; +#if ! defined BOOST_NO_DELETED_FUNCTIONS MovableButNonCopyable(MovableButNonCopyable const&) = delete; MovableButNonCopyable& operator=(MovableButNonCopyable const&) = delete; - MovableButNonCopyable(MovableButNonCopyable&&) = default; - MovableButNonCopyable& operator=(MovableButNonCopyable&&) = default; #else - MovableButNonCopyable() {}; - MovableButNonCopyable(MovableButNonCopyable&&) {}; - MovableButNonCopyable& operator=(MovableButNonCopyable&&) { - return *this; - }; private: MovableButNonCopyable(MovableButNonCopyable const&); MovableButNonCopyable& operator=(MovableButNonCopyable const&); #endif +public: + MovableButNonCopyable() {}; + MovableButNonCopyable(MovableButNonCopyable&&) {}; + MovableButNonCopyable& operator=(MovableButNonCopyable&&) + { + return *this; + }; }; + +MovableButNonCopyable construct() +{ + return MovableButNonCopyable(); +} + int main() { - boost::packaged_task<MovableButNonCopyable>(MovableButNonCopyable()); + boost::packaged_task<MovableButNonCopyable> pt(construct); + pt(); return 0; } #else |