b4afa1c69b
It's not a trivially copyable unless all elems are
2018-05-08 00:38:10 +09:00
b978b47952
Merge upstream branch 'develop' into optimization/vector-and-tuple
2018-05-07 12:27:46 +09:00
e8da43a539
Added workaround for gcc 4.6 with C array
2018-04-26 00:02:57 +09:00
c4881f1862
Merge upstream branch 'develop' into more-ci-targets
2018-04-22 03:41:55 +09:00
a273cd8131
Added workaround for msvc-14.x
2018-04-19 00:21:41 +09:00
dd695c1dbd
Fixed a compile error bug similar to previous vector's one
2018-04-18 22:38:09 +09:00
e962c1abb5
Fixed vector compile error with C-style array
2018-04-18 22:31:35 +09:00
9536909a3a
Remove redundant argument.
2018-03-14 16:02:07 +09:00
47070610d0
Remove unnecessary user defined ctor
...
there is no reasons defining those probably.
This change allows to be vector trivially copyable iff all elements are
trivially copyable, i.e. following static assert now passes.
```cpp
static_assert(std::is_trivially_copyable<vector<double, int>>{});
```
2018-03-14 15:15:33 +09:00
9de3272174
Added workaround for GCC 4.4/c++0x
...
Teh call of ctor is ambiguous since gcc 4.4 allows binding rvalue to lvalue reference.
2018-03-06 00:40:41 +09:00
38818fbe3d
Add limits precheck
2018-02-20 22:44:34 +03:00
39fb05e40f
vector: Fix for compilers not compatible with CWG defect 945
...
http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#945
2017-12-23 18:17:04 +03:00
099333b61d
map: Switch to SFINAE in template parameters
...
Fixes #163 .
Since C++11 we can do SFINAE in template parameters. VS2017 15.5 doesn't like
the SFINAE on argument here, but do not ask me why, because I have no idea.
2017-12-14 00:05:28 +03:00
b12c6b6af6
Regenerate preprocessed files.
2017-11-23 22:59:02 +09:00
4eda545405
Fixed a regression with msvc 10/11/12 defect
2017-11-23 22:48:11 +09:00
0e0de6c4f1
Regenerate preprocessed files.
2017-10-15 07:10:25 +09:00
984fcfd276
Delete needless overload.
2017-10-14 03:18:47 +09:00
62f5ccac53
Fixed compile error on copy construction.
2017-10-14 03:16:44 +09:00
cf33f3db4e
Added copy assign to deque(03).
...
move ctor will delete defaulted copy assign.
2017-10-14 03:16:00 +09:00
dfe08dec2c
Fixed incorrect overload resolution.
...
Those functions should not be chosen for copying/moving.
2017-10-14 02:34:44 +09:00
e606ceeff0
Improve vector value_at performance.
2017-10-07 14:18:29 +09:00
24d1c7fd1a
Reduce type deduction which is already known.
2017-10-04 01:43:45 +09:00
e5d073d786
Use compiler generated ctor.
2017-10-04 01:30:27 +09:00
6a9b7f314d
Remove unnecessary base check.
...
fusion::tuple doesn't inherit from fusion::vector now.
2017-10-04 01:13:26 +09:00
9cb23af898
Remove circular preprocessor include
2017-09-02 16:09:12 +02:00
451e21adb3
Update workarounds for msvc 14.1
2017-04-30 23:26:24 +09:00
c630611626
Fix returing temporary variable warning on MSVC.
2016-11-01 01:54:10 +09:00
5906d9c316
Make C++11 fusion::vector more consistent with C++03 fusion::vector
...
- Construct from elements is enabled iff each argument is_convertible to
corresponding element.
- Construct from sequence is enabled iff the single argument is a fusion
sequence.
- C++11 vector and tuple also disable construct from sequence that are
shorter than the destination. C++03 gives incorrect is_convertible
responses in this situation and fails to compile if that constructor is
used; C++11 can have instantation errors in
and_<is_convertible<U, T>...> without the additional check.
- C++11 tuple and vector support truncation conversion and assignment like
all other sequences.
2016-08-26 12:45:11 -04:00
55150a7fa6
Add DISABLE_VARIADIC_VECTOR and SFINAE for c++11 tuple element construction
2016-07-26 14:53:26 -04:00
79d8e9d11c
Added to nested tests, and fixed C++11 vector copy-from-sequence
2016-05-31 16:52:57 -04:00
104f508cef
Remove outdated comment.
2016-03-07 19:42:23 +09:00
b46aad996a
Remove trailing void_ support on variadic vector.
2016-02-11 23:56:07 +09:00
64b8406c16
Introduce detail::enabler instead of fusion::void_.
2015-12-10 17:06:04 +09:00
2492ff9b25
regen
2015-12-01 01:26:08 +09:00
12792a6c11
Fix compile error with ambiguous ctor, close #11766 .
...
When a) first elem is sequence b) second (and third) elem is(are) void*,
both of conversion ctor and forwarding ctor are candidate since SFINAE
expression has void* type.
2015-12-01 01:14:52 +09:00
3298875ecc
Add double identity trick for fast value_at (vectors)
...
This is a workaround to make decltype(expr)::type compiles
with old compilers.
2015-11-10 14:04:16 +01:00
74c0d5d0ec
Fix fusion::at<vector<...>, N> for C array types
2015-11-10 10:55:13 +01:00
4d3891ed31
Remove invalid odr-usages of boost::declval.
2015-11-07 16:11:06 -05:00
4d5da0371b
Suppress undefined inline function warning.
2015-10-27 07:59:55 +09:00
73045b4d49
Fix compile error on by-elem ctor.
...
Single element vector of fusion sequence cannot construct from its
element type.
2015-10-23 08:29:05 +09:00
18742c6922
Merge pull request #105 from boostorg/variadics
...
Merge variadics into develop.
2015-10-22 15:40:04 +08:00
1ad2e59e07
Make fusion::at<vector<...>,N> O(1).
2015-10-20 20:12:14 +09:00
a81024f617
Regenerate preprocessed files.
2015-10-17 11:24:19 +09:00
ce4ccb929c
Check the argument being fusion sequence or not.
2015-10-08 22:23:10 +09:00
5114d9419e
Drop unnecessary ctor.
2015-10-07 17:40:55 +09:00
ca0d92e68d
R-value references are now container-wide requirements.
2015-10-06 21:29:02 +09:00
c750552a02
Tweak coding style.
2015-10-06 11:28:16 +09:00
c30fabf98f
Apply 7fdb320
change into C++98 interface.
2015-08-30 17:13:36 +09:00
e61d08d953
Fix broken convert<deque_tag>, close issue 11572.
2015-08-26 00:20:07 +09:00
d9e5a620be
Merge pull request #97 from Flast/feature/variadic/set
...
Variadics for fusion::set.
2015-08-20 21:57:19 +08:00