1
0
forked from boostorg/mp11
Commit Graph

82 Commits

Author SHA1 Message Date
Peter Dimov
ee5f1d620f Add value list support to mp_min_element, mp_max_element. Fixes #87. 2023-12-17 20:37:56 +02:00
Ilya Popov
46c4e8a517 Remove usages of old style cast, use static_cast instead
This silences compiler warnings generated by GCC
2023-06-23 16:58:51 +02:00
Peter Dimov
efbaa77749 Add test/mp_repeat_3.cpp 2023-05-16 17:02:38 +03:00
Peter Dimov
f19d2d9bd4 Apply the mp_append optimization to the value list case as well 2023-05-16 03:41:49 +03:00
Peter Dimov
64ed9449cb Refactor mp_append slightly 2023-05-16 03:19:32 +03:00
Peter Dimov
64532c4792 Add support for (homogeneous) value lists to mp_append. Refs #53. 2023-05-16 02:37:59 +03:00
Peter Dimov
2c76388fdb Add support for value lists to mp_front. Refs #53. 2023-05-15 14:59:30 +03:00
Peter Dimov
570acee866 Add mp_value; enable mp_rename on value lists. Refs #53. 2023-05-14 19:45:09 +03:00
Peter Dimov
094206a08d Make mp_rename, mp_apply, mp_apply_q SFINAE-friendly 2023-03-24 11:58:56 +02:00
Peter Dimov
f16707f6e9 Update mp_fold to be SFINAE-friendly (for up to 9 elements) 2023-03-24 05:13:48 +02:00
Peter Dimov
a4d7c46670 Define host compiler macro when using CUDA (refs #68) 2021-11-18 14:08:33 +02:00
Peter Dimov
f8206aa37d Remove unnecessary includes 2021-08-21 15:08:21 +03:00
Peter Dimov
ce1046f007 Remove unnecessary include 2021-08-21 15:06:10 +03:00
Dmitry Arkhipov
8cd25cc950 Put mp_rename, mp_apply into their own file 2021-07-27 08:38:29 +03:00
Dmitry Arkhipov
7b854477f8 Put mp_front into its own file 2021-07-27 08:33:01 +03:00
Peter Dimov
6fdfb5bde8 Avoid g++-10 warning about < 0 compare 2021-03-24 18:59:09 +02:00
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