344 Commits

Author SHA1 Message Date
Peter Dimov
13c36a793c Improve compilation performance of mp_with_index<N> for large N 2020-05-09 17:32:03 +03:00
Peter Dimov
6c1628b713 Update Mp11 version 2020-05-01 01:27:26 +03:00
Peter Dimov
984da7f1a1 Add mp_iterate 2020-03-22 18:50:55 +02:00
Peter Dimov
e9684a1f66 Apply a workaround for msvc-12.0, msvc-14.0 2020-03-19 17:36:20 +02:00
Peter Dimov
6bc2682936 Add mp_partial_sum 2020-03-19 17:25:03 +02:00
Peter Dimov
2c8ce53efb Apply a workaround for msvc-12.0 2020-03-19 16:11:39 +02:00
Peter Dimov
64b9c1f874 Add mp_power_set 2020-03-19 15:04:52 +02:00
Peter Dimov
0851643af5 Change mp_invoke on Clang to use a struct, because deprecated alias templates never warn 2020-03-09 19:59:19 +02:00
Peter Dimov
c806f70b73 Prefer __attribute__((deprecated)) on all g++-compatible compilers (f.ex. Intel) 2020-03-08 18:14:01 +02:00
Peter Dimov
03c221f2d5 Do not use Q::template fn... because it breaks g++ < 7 and nvcc 2020-03-08 06:43:48 +02:00
Peter Dimov
5d25ec4ad8 Add mp_compose 2020-03-08 02:33:56 +02:00
Peter Dimov
1f634c7071 Do not use __builtin_unreachable() when not on g++ or clang. Fixes #46. 2020-03-01 01:19:58 +02:00
vahtis
66681de1ed Added fix for Sun Studio compilations. (#45)
* Added fix for Sun Studio compilations.

* Update config.hpp
2020-01-28 15:28:18 -08:00
Peter Dimov
4e177f73ae Simplify mp_rotate_impl 2020-01-18 20:15:05 +02:00
Peter Dimov
8ef7658518 Implement mp_rotate_right in terms of mp_rotate_left 2020-01-18 18:44:43 +02:00
Peter Dimov
d3f0738bf4 mp_rotate_*: remove default rotation count 2020-01-18 18:31:06 +02:00
D-Barber
054f576d14 Add mp_rotate_left and mp_rotate_right 2019-12-21 22:21:47 +00:00
Peter Dimov
85fb466414 Update version to 1.73.0 2019-12-12 21:28:41 +02:00
Peter Dimov
b24d2285a6 Add mp_flatten 2019-12-08 02:08:26 +02:00
Peter Dimov
f14309e92d Fix ambiguity in mp_similar<Y<>, Y<>> 2019-12-08 02:07:17 +02:00
Peter Dimov
409147714c Reformat mp_unique_if 2019-12-07 19:13:02 +02:00
Kris Jusiak
aa11577812 🆕 [mp_unique_if] Support for mp_unique with a predicate
Problem:
- `mp_unique` doesn't support custom predicates.

Solution:
- Add `mp_unique_if` and `mp_unique_if_q` which allow to remove duplicates elements with a predicate.
2019-12-03 15:12:55 -07:00
Peter Dimov
ed5dc75e18 Update BOOST_MP11_VERSION 2019-08-24 00:46:26 +03:00
Peter Dimov
164aa375f2 Split mpl.hpp into mpl_list.hpp and mpl_tuple.hpp 2019-08-23 20:02:00 +03:00
Peter Dimov
bf6f3e0221 Clang 3.3 can't parse __attribute__((deprecated)) on aliases 2019-05-25 03:40:23 +03:00
Peter Dimov
23a1432e8d Use __attribute__((deprecated)) on Clang because of -pedantic 2019-05-25 02:24:47 +03:00
Jonathan Müller
bba027610f Fix GCC sign conversion warning
The conversion bool -> int -> std::size_t triggers GCC sign conversion warning.
2019-05-22 11:03:50 +02:00
Peter Dimov
cb15f6b94e Update GCC workarounds 2019-05-10 18:42:54 +03:00
Peter Dimov
f1ededad7a Update BOOST_MP11_VERSION 2019-04-18 09:48:18 +03:00
Peter Dimov
b6b1805c8c Add <boost/mp11/version.hpp> 2019-03-04 20:29:49 +02:00
Peter Dimov
f7ca2842c3 Update g++ workarounds 2019-02-22 13:57:25 +02:00
Peter Dimov
ed431d7624 Document mp_back, mp_pop_back 2019-02-16 20:26:03 +02:00
Peter Dimov
dda257c403 Add mp_back, mp_pop_back 2019-02-16 19:41:08 +02:00
Peter Dimov
6a880ae572 Unroll mp_take a bit more 2019-02-16 18:46:27 +02:00
Peter Dimov
fc8bfcf601 Add mp_eval_or 2019-02-14 21:03:13 +02:00
Peter Dimov
ca7e140827 Add mp_valid_q 2019-02-14 20:15:29 +02:00
Peter Dimov
beb9c2dd59 Add mp_eval_if_not 2019-02-14 19:57:04 +02:00
Peter Dimov
07892c8d73 Add mp_filter 2019-02-03 19:48:16 +02:00
Peter Dimov
acd0e3e015 Test mp_same with 1024 arguments 2019-01-21 06:52:01 +02:00
Peter Dimov
c51289bcb5 Use __make_integer_seq when available 2019-01-15 20:22:39 +02:00
Peter Dimov
8e60b42fa0 Check [[fallthrough]] in addition to [[deprecated]] to eliminate Clang 3.8 2019-01-12 18:23:06 +02:00
Peter Dimov
af12ea6785 Use __has_cpp_attribute instead of checking the Clang version 2019-01-12 08:03:54 +02:00
Peter Dimov
6ab64c66e2 Disable g++ sign-compare warnings in mp_less 2019-01-11 03:41:16 +02:00
Peter Dimov
36a4e026df Disable use of __attribute__((deprecated)) on clang-3.3 as it can't parse it on aliases 2019-01-11 02:16:55 +02:00
Peter Dimov
ceabf8066c Use __attribute__((deprecated)) on clang 3.8 to avoid a warning 2019-01-11 00:32:39 +02:00
Peter Dimov
46e38aea1c Merge branch 'feature/mp_transform_first' into develop 2019-01-08 05:57:39 +02:00
Peter Dimov
e982834334 Merge branch 'feature/mp_not_fn' into develop 2019-01-08 05:57:28 +02:00
Peter Dimov
48f2f817fe Remove redundant check 2019-01-08 03:31:18 +02:00
Peter Dimov
2274150ea0 Make primary templates in set.hpp empty instead of undefined 2019-01-08 02:39:07 +02:00
Peter Dimov
7e501e3cc8 Add mp_transform_first, second, third 2019-01-08 02:17:32 +02:00