Commit Graph
52 Commits
Author SHA1 Message Date
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 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 2274150ea0 Make primary templates in set.hpp empty instead of undefined 2019-01-08 02:39:07 +02:00
Peter Dimov 21a95388f5 Move mp_is_list to detail/mp_is_list.hpp 2019-01-07 21:26:35 +02:00
Peter Dimov a9b36f58ae Move mp_copy_if, mp_remove_if to separate headers 2019-01-07 20:44:50 +02:00
Peter Dimov 3e3d4dec74 Merge branch 'feature/mp_append_sf' into develop 2019-01-07 17:02:16 +02:00
Peter Dimov 2bf0aa3815 Make mp_append SFINAE-friendly; add test/mp_append_sf.cpp 2019-01-07 07:03:05 +02:00
Peter Dimov 72279a5b2e Retain mp_invoke for compatibility, mark as deprecated 2019-01-07 04:34:01 +02:00
Peter Dimov 6fa5c890a8 Update msvc-14.1 workaround 2018-12-16 18:57:16 +02:00
Glen Fernandes 2e389b27e0 Make the default (unreachable) label the first one 2018-09-03 14:13:45 -04:00
Peter Dimov 025779ec15 Mark as unreachable the default cases in mp_with_index to improve code generation 2018-09-03 17:45:30 +03:00
Peter Dimov 8893227365 Disable fold expressions in mp_plus for msvc-14.1 1915 (15.8) 2018-08-30 01:09:39 +03:00
Peter Dimov a376598a04 Try to work around ::gets errors on clang 3.x/c++14/libstdc++ 4.8 2018-08-29 22:07:08 +03:00
Peter Dimov 76817e70d6 Remove use of Boost.Config 2018-08-29 20:03:59 +03:00
Alexander Matthes 6cd7355d94 Changed precompiler test for cuda 9 workaround
BOOST_WORKAROUND( BOOST_CUDA_VERSION, / 1000000 == 9 ) was not working because
BOOST_CUDA_VERSION is defined as sum without brackets so / 1000000 was only
applied to the last addend.
2018-04-27 08:52:54 +02:00
Alexander Matthes b78e808fc1 Merge branch 'develop' of github.com:boostorg/mp11 into workaround-nvcc-cuda 2018-04-26 20:29:02 +02:00
Alexander Matthes 2458880e77 Added work around for Nvidia nvcc cuda compiler >= 9.0
* https://svn.boost.org/trac10/ticket/13513
* https://github.com/ComputationalRadiationPhysics/alpaka/issues/459#issuecomment-377678240
2018-04-26 19:10:57 +02:00
Axel Huebl c24fe1750c Clang -x cuda: >>> mixmatch 2018-04-26 10:53:59 +02:00
Peter Dimov 4aacc60840 Replace detail/workaround.hpp with config/workaround.hpp 2018-01-23 21:34:35 +02:00
Peter Dimov f5bb23dc76 Revert "Change mp_void<T...> to be a proper alias of void"
This reverts commit 860f918553.
2017-12-21 02:19:44 +02:00
Peter Dimov 860f918553 Change mp_void<T...> to be a proper alias of void 2017-12-20 20:25:53 +02:00
Peter Dimov ea073efb43 Move mp_void to detail/mp_void.hpp 2017-12-20 15:58:18 +02:00
Peter Dimov aae8d4dfba Add mp_min_element_q, mp_max_element_q 2017-10-22 02:00:56 +03:00
Peter Dimov 4a8d6db171 Add mp_count_if_q 2017-10-21 21:30:51 +03:00
Peter Dimov 66b7128253 Move mp_min_element, mp_max_element to detail/mp_min_element.hpp 2017-10-15 14:43:33 +03:00
Peter Dimov ea68803092 Move mp_fold to detail/mp_fold.hpp 2017-10-15 14:33:50 +03:00
Peter Dimov 602147bf31 Revert "Include workaround.hpp from Config"
This reverts commit 308e5b6edb.

For compatibility with 1.64, it's better not to use
config/workaround.hpp yet.
2017-09-10 03:52:48 +03:00
Glen Fernandes 308e5b6edb Include workaround.hpp from Config 2017-08-27 15:12:05 -04:00
Peter Dimov d8628a7c5e Bump msvc version checks from <= 1910 to < 1920 2017-08-22 22:01:10 +03:00
Peter Dimov cde9259b1a Rename mp_for_index to mp_with_index 2017-06-02 18:20:37 +03:00
Peter Dimov 7f9f4c31e2 Avoid unused argument warning 2017-06-01 19:33:32 +03:00
Peter Dimov b8bbd279b2 Make mp_for_each constexpr under C++14 2017-05-31 23:44:24 +03:00
Peter Dimov 3cce995877 Rename mp_for_index_c to mp_for_index 2017-05-31 23:18:08 +03:00
Peter Dimov 1bd4b670ce Avoid control reaches end of non-void function warnings 2017-05-31 20:16:41 +03:00
Peter Dimov e6c28a0848 Add mp_for_index 2017-05-31 19:56:18 +03:00
Peter Dimov 0e0d7fae4e Enable fold expressions on g++ 2017-05-24 06:16:17 +03:00
Peter Dimov b306ab25aa Do not use auto on g++ 4.7 in mp_plus 2017-05-24 03:47:24 +03:00
Peter Dimov 2bd7393365 Use fold expressions in mp_plus 2017-05-24 02:50:43 +03:00
Peter Dimov e871f0c30c Optimize mp_append. 2017-03-27 02:00:48 +03:00
Peter Dimov 3cd3a916a8 Use __type_pack_element in mp_at(_c) 2017-03-25 20:32:40 +02:00
Peter Dimov 848c2ff82c Add fold expr implementations of mp_count, mp_count_if 2017-03-23 19:34:43 +02:00
Peter Dimov 72c9c49224 Unroll cx_plus a bit. 2017-03-23 19:22:42 +02:00
Peter Dimov e1edd90c21 Fix clang 3.9 -std=c++1z failures 2017-03-18 01:05:54 +02:00
Peter Dimov a231733c7e Move everything to namespace mp11 2017-03-15 21:23:15 +02:00
Peter Dimov 586392ca51 VC++2017 still needs the workarounds. 2017-03-14 00:35:19 +02:00
Peter Dimov 7a0f4001e7 Add mp_all, mp_and, mp_any, mp_or; move mp_not to integral.hpp. 2016-11-16 21:24:13 +02:00
Peter Dimov 37f088a5bc Boost.Config no longer defines BOOST_NO_CXX11_CONSTEXPR for VS2015u3 2016-10-23 18:16:55 +03:00
Peter Dimov 4094f2f73f Add mp_iota, mp_at, mp_take. 2015-06-22 03:37:15 +03:00