Commit Graph

67 Commits

Author SHA1 Message Date
Andrey Semashev
2f3cf1ca84 Added a test to verify that boost::optional copy constructor does not invoke T's template constructors. 2018-11-04 17:54:57 +03:00
Andrzej Krzemienski
65bb040db8 tests: added two test cases from GitHub issues 2018-10-29 21:47:09 +01:00
Andrzej Krzemienski
fae2791f45 added test for swapping const opitonals 2018-10-25 00:37:13 +02:00
Andrzej Krzemienski
228b20df82 fixed old implementation (issue #57) 2018-07-12 00:30:47 +02:00
Andrzej Krzemienski
71d797b9ee added implementation and tests of flat_map() 2018-06-28 23:30:47 +02:00
Andrzej Krzemienski
d13623884a hopefully fixed the libstdc++ 4.9 problem (thanks Jonathan) 2018-06-28 02:10:57 +02:00
Andrzej Krzemienski
35ca7c1ff1 added a hack test to check compiler setup 2018-06-25 23:59:19 +02:00
Andrzej Krzemienski
e47a017009 added o.map() 2018-06-23 18:27:14 +02:00
petamas
b832d4c54f Add test for template parameter with member enum T (fails by default on VS2015)
Issue: https://github.com/boostorg/optional/issues/46ű
2018-01-03 10:37:37 +01:00
Andrzej Krzemienski
06dea2cb9b Reverted specialization for trivial types
It caused too many problems. I left only specialiation for scalar types.
I will need to devise clever type traits for reconizing trivial types with working constructor.
2017-11-07 23:34:34 +01:00
Vinnie Falco
42c2377a0d Add tc_optional_base test 2017-11-07 23:34:20 +01:00
Andrzej Krzemienski
58f7c2f14a fix bug with defaulted move in msvc 12.0 2017-11-07 23:34:12 +01:00
Peter Dimov
9e0726cee1 Add test for a deleted default constructor 2017-11-07 23:34:07 +01:00
Andrzej Krzemienski
2d2c3c3f6f trivially-copyable optional<T> for trivial T 2017-11-07 23:34:05 +01:00
Andrzej Krzemienski
4fe57f57fa Fix make_optional for rvalues 2017-11-07 23:33:54 +01:00
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