Commit Graph
52 Commits
Author SHA1 Message Date
Andrzej Krzemienski b4907c2a51 old compiler workarounds for the previous two fixes 2016-11-20 23:42:41 +01:00
Andrzej Krzemienski fafb3abb64 Implemented reset syntax: o = {} 2016-11-19 21:14:28 +01:00
Andrzej Krzemienski 8d69e99e78 removed hack test, updated copyright 2016-11-06 01:49:53 +01:00
Andrzej Krzemienski f9324a8790 attempt fix at gcc 5.2 c++03 2016-09-02 01:42:26 +02:00
Andrzej Krzemienski 08076e3964 fixed optional<optional<T>&> case 2016-05-17 00:54:09 +02:00
Andrzej Krzemienski 865d94a8d8 fixed interop between opt refs and opt vals 2016-03-06 19:08:25 +01:00
Andrzej Krzemienski d3dda39beb removed 'exploration' test 2016-02-20 21:18:47 +01:00
Andrzej Krzemienski f6e09fbf9c value constructor is sfinae-friendly 2016-02-19 18:41:42 +01:00
Andrzej Krzemienski 44d57a1d8b Fix: prevented the binding illegal temporary to optional<const int&>
Older MSVC versions add illegal temporary when you want to assign from const integral value.
2016-02-19 00:25:54 +01:00
Andrzej Krzemienski b0602a1161 more unit test for opt ref swap and abstract types 2016-02-17 00:01:13 +01:00
Andrzej Krzemienski 94c735af2d added optional ref swap
and also chaned the copyright year in docs
2016-02-13 15:33:07 +01:00
Andrzej Krzemienski fb1cf2581e Config: detect ref convert bug in gcc 4.4 and 4.5 2015-10-14 23:11:33 +02:00
Andrzej Krzemieński 2eaf223085 fake test for checking build versions 2015-10-12 11:14:59 +02:00
Andrzej Krzemieński 7490a62a00 added NO-CONVERT tests 2015-10-10 15:27:46 +02:00
Andrzej Krzemienski 0d5061aebe experimental optional config test 2015-10-08 18:54:21 +02:00
Andrzej Krzemienski 9f8dd57386 boost::none - simpler and works with MSVC 2015-10-02 09:00:57 +02:00
Andrzej Krzemienski 593710e961 doc: added relnotes for 1.59 2015-07-08 23:54:20 +02:00
Andrzej Krzemienski 4be4646ddd Added mock test for rvalue refs 2015-05-19 23:14:15 +02:00
Andrzej Krzemienski 5ece1f224a Added meta test for buggy type trait 2015-05-18 22:40:15 +02:00
Andrzej Krzemienski 95a073f061 using macro BOOST_NO_CXX11_NOEXCEPT 2015-05-18 22:09:56 +02:00
Andrzej Krzemienski 8ca74951b0 Added emplace(void) for older compilers 2015-05-15 18:10:19 +02:00
Andrzej Krzemienski 0a8a798c3a Fixed Trac #10839 2015-03-09 11:50:10 +01:00
Andrzej Krzemienski 59266a2630 More restrictive assignment from optional<U> 2015-03-06 19:20:45 +01:00
Andrzej Krzemienski 16023fe934 Added test for converting optional ref assignment 2015-01-21 22:00:10 +01:00
Andrzej Krzemienski f229257f30 You can now manually disable move semantics.
This may be useful in MSVC to work around a bug described in Trac #10399
2015-01-21 15:03:17 +01:00
Andrzej Krzemienski 726b227aa9 operator<< improvements 2015-01-21 00:10:51 +01:00
Andrzej Krzemienski 2437f9cb4c testing swap() in a separate file 2015-01-16 19:16:12 +01:00
Andrzej Krzemienski 67c7e21b4b Migration to lightweight_test continues 2015-01-15 22:46:34 +01:00
Andrzej Krzemienski 9e3a4a9b7b finished dividing optional ref tests 2015-01-08 11:33:58 +01:00
Andrzej Krzemienski cf665bc3f7 More fine grained optional ref assign tests 2015-01-07 18:39:58 +01:00
Andrzej Krzemienski 4df589686c refactoring optional ref tests 2014-12-01 18:03:46 +01:00
Andrzej Krzemienski 1e2aed8276 unit test improvements
I have split tests for conversions from uptional<U> and from U to optional<T>.
I have split the optional refs tests that are expected to pass on all compilers.
I started using lightweight_test instead of Boost.Test (now only in some files).
2014-11-29 22:51:45 +01:00
Andrzej Krzemienski 53e53171c4 none_t is no loner constructible from literal 0
This caused problems because:
optional<T> o = 0;
always worked. But often it would create an uninitialized optional.
2014-11-22 01:18:25 +01:00
Andrzej Krzemienski d70114b3dc Added func value_or_eval() 2014-06-18 16:42:48 +02:00
Andrzej Krzemienski 31c9119266 value_or() requires that U is convertible to T
Due to Vladimir Batov.
2014-06-14 22:49:37 +02:00
Andrzej Krzemienski fdc98d17ca Added limited emplace() for older compilers 2014-06-06 23:24:43 +02:00
Andrzej Krzemienski 2e583aaf30 Fixed code, updated docs, added emplace() 2014-06-03 17:36:18 +02:00
Andrzej Krzemienski 75271b73a8 Member fun value() that throws on uninitialized 2014-05-22 23:32:49 +02:00
Andrzej Krzemienski f94846ccc5 Improved documentation. Added some noexcept. 2014-05-07 17:07:12 +02:00
Andrzej Krzemienski 6a790e0c97 Added a test that tests the compiler if references are bound correctly. Also added the second copyright notice. 2014-05-05 19:08:11 +02:00
Andrzej Krzemienski c51f3e810b The (in)equality comparison with boost::none does not require that T be EqualityComparable 2014-04-29 22:59:06 +02:00
Andrzej Krzemienski d59f47156f Merge branch 'feature/move-semantics' into develop
Conflicts:
	doc/html/index.html
	include/boost/optional/optional.hpp
	test/Jamfile.v2
2014-04-29 01:24:10 +02:00
Andrzej Krzemienski 3816143646 Disabled assignment and construction from rvalue references in optional<const T&> 2014-04-28 15:48:55 +02:00
Andrzej Krzemienski 0e61751fab Added more tests for move operations, fixed bugs, disabled optional<T&&>. 2014-04-26 23:24:21 +02:00
Marcel Raad c7cf80e5df Use BOOST_EXPLICIT_OPERATOR_BOOL for optional
I often have the problem that when I change a std::wstring to boost::optional<std::wstring> and the variable is used as a parameter with Boost.Format, the result silently changes from the string contents to "1".

This change prevents implicit conversion to bool if the compiler supports explicit conversion operators.
2014-04-26 15:26:37 +02:00
Andrzej Krzemienski 5c69bac12f Fixed unit tests (still need to add more unit tests for move semantics) 2014-04-26 00:22:39 +02:00
Andrzej Krzemienski a26d11be87 Partially added move semantics (tests are still failing) 2014-04-22 22:36:19 +02:00
Fernando Cacciola a690c8e7a2 Merged changests from RC_1_34_0 - base rev 33417
[SVN r40704]
2007-11-02 22:55:49 +00:00
Vladimir Prus d3f9e112c4 Update Jamfile.v2
[SVN r32761]
2006-02-09 09:50:56 +00:00
Vladimir Prus 3ca0557a7c Sync with V1 Jamfile.
[SVN r21563]
2004-01-09 11:28:42 +00:00