82f677c169
Allow incomplete types in fusion::tag_of and fusion::is_native_fusion_sequence
2018-03-02 02:03:43 -08: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
42a01fc3f4
Fixed compile error with std::array
...
libc++ enables std::array in c++98 mode, but <type_traits> doesn't.
2017-10-13 20:04:11 +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
0471a65ca2
Change fusion::tuple its base class to vector_data.
...
This change aims to improve compile time performance for both of vector and tuple.
2017-10-03 22:25:03 +09:00
9cb23af898
Remove circular preprocessor include
2017-09-02 16:09:12 +02:00
7c15df79f2
isspace(c) is not a macro in Dinkum clib for VxWorks, must be in std namespace
2017-08-10 12:19:32 -04:00
36eac2e77c
Added missing include file.
2017-06-18 23:12:50 +09:00
451e21adb3
Update workarounds for msvc 14.1
2017-04-30 23:26:24 +09:00
f1a619428a
Remove unintended file.
2016-11-20 16:41:23 +09:00
c630611626
Fix returing temporary variable warning on MSVC.
2016-11-01 01:54:10 +09:00
0d8243b36d
Merge pull request #142 from Flast/std_array
...
Adaptor for std::array.
2016-10-31 01:40:57 +09:00
ea9a176312
Include <array> instead of declare std::array.
...
Some implementations declare it as std::tr1::array and conflict.
2016-10-31 01:13:36 +09:00
c158886591
Workaround for MSVC 12 variadics bug.
2016-10-29 21:29:26 +09:00
5135b5109b
Likewise.
2016-10-29 20:57:06 +09:00
490baac6e2
Added workaround for older gcc.
2016-10-29 15:34:49 +09:00
6bd644d43d
Don't use iterator for copy/move assign op.
2016-10-29 14:40:47 +09:00
e74ccb1cf5
DEFINE_STRUCT now allows move construct/assign.
2016-10-19 01:33:43 +09:00
7b13053c7e
Merge pull request #135 from vtnerd/bugfix/vector_conversion_constructor
...
Make C++11 fusion::vector more consistent with C++03 fusion::vector
2016-10-14 13:51:52 +09:00
a2b8a8f254
Don't define user-provided special functions.
...
To allow to define empty struct.
2016-10-13 00:18:14 +09:00
61fab16418
Merge branch 'mloskot/boost_fusion_std_array' into develop
2016-10-10 18:46:29 +09:00
928ced256a
Adjust directory structure.
2016-10-09 22:14:42 +09:00
d5740f8310
Fixed extra semicolon
2016-09-01 17:57:15 +03: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
3189580857
Added workaround for GCC 3.4 due to ambiguous.
...
NOTE: GCC 3.3 and earlier are not supported officially by Boost community.
2016-03-16 20:25:59 +09:00
12b25c2c99
Correct workaround condition.
2016-03-09 10:19:22 +09:00
275236f86e
Workaround for ICE on GCC 4.0 and 4.1.
2016-03-08 15:36:21 +09:00
a8b70d6679
Workaround for ICE on GCC 4.0.0.
2016-03-08 14:43:32 +09:00
104f508cef
Remove outdated comment.
2016-03-07 19:42:23 +09:00
f7b90f2981
Merge pull request #124 from Flast/feature/ticket-11157-remove-BOOST_PP_IS_EMPTY
...
Remove use of BOOST_PP_IS_EMPTY.
2016-02-17 04:45:16 +08:00
5ed26ec932
Drop Byte-order-Marker.
2016-02-16 23:55:59 +09:00
4ebc028769
Optimize.
2016-02-16 19:32:57 +09:00
99ad77b92f
Fix typos.
2016-02-16 16:52:27 +09:00
9b43ac8ee0
More optimization.
2016-02-16 00:40:27 +09:00
c9c2c3bad6
Optimize macros.
2016-02-14 23:53:38 +09:00
d7d47619b4
Tweak PP includes.
2016-02-14 23:41:22 +09:00