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