1
0
forked from boostorg/mp11
Commit Graph

66 Commits

Author SHA1 Message Date
Peter Dimov
c92d2d0b6f No longer use fold expressions for mp_count_if to avoid compiler limits 2021-03-22 19:17:44 +02:00
Peter Dimov
0348adbed9 No longer use fold expressions for mp_count to avoid compiler limits 2021-03-22 18:37:46 +02:00
Peter Dimov
064e9d415b mp_count: do not use fold expressions on msvc because of parser stack limit 2020-11-26 02:14:59 +02:00
Peter Dimov
6bb260ff65 mp_count_if: do not use fold expressions on msvc-14.2 because of parser stack limit 2020-11-26 00:23:13 +02:00
Peter Dimov
4515938bbd Work around std::tuple MSVC issue with mp_map_find (fixes #52) 2020-07-25 01:56:00 +03:00
Peter Dimov
13c36a793c Improve compilation performance of mp_with_index<N> for large N 2020-05-09 17:32:03 +03: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
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
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
acd0e3e015 Test mp_same with 1024 arguments 2019-01-21 06:52:01 +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
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