Kohei Takahashi
b4afa1c69b
It's not a trivially copyable unless all elems are
2018-05-08 00:38:10 +09:00
Kohei Takahashi
b978b47952
Merge upstream branch 'develop' into optimization/vector-and-tuple
2018-05-07 12:27:46 +09:00
Kohei Takahashi
e8da43a539
Added workaround for gcc 4.6 with C array
2018-04-26 00:02:57 +09:00
Kohei Takahashi
c4881f1862
Merge upstream branch 'develop' into more-ci-targets
2018-04-22 03:41:55 +09:00
Kohei Takahashi
a273cd8131
Added workaround for msvc-14.x
2018-04-19 00:21:41 +09:00
Kohei Takahashi
dd695c1dbd
Fixed a compile error bug similar to previous vector's one
2018-04-18 22:38:09 +09:00
Kohei Takahashi
e962c1abb5
Fixed vector compile error with C-style array
2018-04-18 22:31:35 +09:00
Kohei Takahashi
9536909a3a
Remove redundant argument.
2018-03-14 16:02:07 +09:00
Kohei Takahashi
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
Kohei Takahashi
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
Nikita Kniazev
38818fbe3d
Add limits precheck
2018-02-20 22:44:34 +03:00
Nikita Kniazev
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
Nikita Kniazev
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
Kohei Takahashi
b12c6b6af6
Regenerate preprocessed files.
2017-11-23 22:59:02 +09:00
Kohei Takahashi
4eda545405
Fixed a regression with msvc 10/11/12 defect
2017-11-23 22:48:11 +09:00
Kohei Takahashi
0e0de6c4f1
Regenerate preprocessed files.
2017-10-15 07:10:25 +09:00
Kohei Takahashi
984fcfd276
Delete needless overload.
2017-10-14 03:18:47 +09:00
Kohei Takahashi
62f5ccac53
Fixed compile error on copy construction.
2017-10-14 03:16:44 +09:00
Kohei Takahashi
cf33f3db4e
Added copy assign to deque(03).
...
move ctor will delete defaulted copy assign.
2017-10-14 03:16:00 +09:00
Kohei Takahashi
dfe08dec2c
Fixed incorrect overload resolution.
...
Those functions should not be chosen for copying/moving.
2017-10-14 02:34:44 +09:00
Kohei Takahashi
e606ceeff0
Improve vector value_at performance.
2017-10-07 14:18:29 +09:00
Kohei Takahashi
24d1c7fd1a
Reduce type deduction which is already known.
2017-10-04 01:43:45 +09:00
Kohei Takahashi
e5d073d786
Use compiler generated ctor.
2017-10-04 01:30:27 +09:00
Kohei Takahashi
6a9b7f314d
Remove unnecessary base check.
...
fusion::tuple doesn't inherit from fusion::vector now.
2017-10-04 01:13:26 +09:00
Gregor Jasny
9cb23af898
Remove circular preprocessor include
2017-09-02 16:09:12 +02:00
Kohei Takahashi
451e21adb3
Update workarounds for msvc 14.1
2017-04-30 23:26:24 +09:00
Kohei Takahashi
c630611626
Fix returing temporary variable warning on MSVC.
2016-11-01 01:54:10 +09:00
Lee Clagett
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
Lee Clagett
55150a7fa6
Add DISABLE_VARIADIC_VECTOR and SFINAE for c++11 tuple element construction
2016-07-26 14:53:26 -04:00
Lee Clagett
79d8e9d11c
Added to nested tests, and fixed C++11 vector copy-from-sequence
2016-05-31 16:52:57 -04:00
Kohei Takahashi
104f508cef
Remove outdated comment.
2016-03-07 19:42:23 +09:00
Kohei Takahashi
b46aad996a
Remove trailing void_ support on variadic vector.
2016-02-11 23:56:07 +09:00
Kohei Takahashi
64b8406c16
Introduce detail::enabler instead of fusion::void_.
2015-12-10 17:06:04 +09:00
Kohei Takahashi
2492ff9b25
regen
2015-12-01 01:26:08 +09:00
Kohei Takahashi
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
Charly Chevalier
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
Charly Chevalier
74c0d5d0ec
Fix fusion::at<vector<...>, N> for C array types
2015-11-10 10:55:13 +01:00
Louis Dionne
4d3891ed31
Remove invalid odr-usages of boost::declval.
2015-11-07 16:11:06 -05:00
Kohei Takahashi
4d5da0371b
Suppress undefined inline function warning.
2015-10-27 07:59:55 +09:00
Kohei Takahashi
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
Joel de Guzman
18742c6922
Merge pull request #105 from boostorg/variadics
...
Merge variadics into develop.
2015-10-22 15:40:04 +08:00
Kohei Takahashi
1ad2e59e07
Make fusion::at<vector<...>,N> O(1).
2015-10-20 20:12:14 +09:00
Kohei Takahashi
a81024f617
Regenerate preprocessed files.
2015-10-17 11:24:19 +09:00
Kohei Takahashi
ce4ccb929c
Check the argument being fusion sequence or not.
2015-10-08 22:23:10 +09:00
Kohei Takahashi
5114d9419e
Drop unnecessary ctor.
2015-10-07 17:40:55 +09:00
Kohei Takahashi
ca0d92e68d
R-value references are now container-wide requirements.
2015-10-06 21:29:02 +09:00
Kohei Takahashi
c750552a02
Tweak coding style.
2015-10-06 11:28:16 +09:00
Kohei Takahashi
c30fabf98f
Apply 7fdb320 change into C++98 interface.
2015-08-30 17:13:36 +09:00
Kohei Takahashi
e61d08d953
Fix broken convert<deque_tag>, close issue 11572.
2015-08-26 00:20:07 +09:00
Joel de Guzman
d9e5a620be
Merge pull request #97 from Flast/feature/variadic/set
...
Variadics for fusion::set.
2015-08-20 21:57:19 +08:00