diff options
Diffstat (limited to 'boost/fusion/container/generation/make_set.hpp')
-rw-r--r-- | boost/fusion/container/generation/make_set.hpp | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/boost/fusion/container/generation/make_set.hpp b/boost/fusion/container/generation/make_set.hpp index 4cd20ab77a..0bde4a9c49 100644 --- a/boost/fusion/container/generation/make_set.hpp +++ b/boost/fusion/container/generation/make_set.hpp @@ -13,6 +13,7 @@ #include <boost/preprocessor/repetition/enum_binary_params.hpp> #include <boost/preprocessor/repetition/enum_params_with_a_default.hpp> #include <boost/preprocessor/repetition/repeat_from_to.hpp> +#include <boost/fusion/support/config.hpp> #include <boost/fusion/container/set/set.hpp> #include <boost/fusion/support/detail/as_fusion_element.hpp> #include <boost/fusion/support/pair.hpp> @@ -35,6 +36,7 @@ #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) #pragma wave option(preserve: 1) +#define FUSION_HASH # #endif namespace boost { namespace fusion @@ -57,7 +59,22 @@ namespace boost { namespace fusion }; } - BOOST_FUSION_GPU_ENABLED inline set<> + // XXX: +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +FUSION_HASH if defined(BOOST_CLANG) + BOOST_CXX14_CONSTEXPR +FUSION_HASH else + BOOST_CONSTEXPR +FUSION_HASH endif +#else +#if defined(BOOST_CLANG) + BOOST_CXX14_CONSTEXPR +#else + BOOST_CONSTEXPR +#endif +#endif + BOOST_FUSION_GPU_ENABLED + inline set<> make_set() { return set<>(); @@ -76,6 +93,7 @@ namespace boost { namespace fusion }} #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#undef FUSION_HASH #pragma wave option(output: null) #endif @@ -103,12 +121,12 @@ namespace boost { namespace fusion } template <BOOST_PP_ENUM_PARAMS(N, typename T)> - BOOST_FUSION_GPU_ENABLED + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED inline set<BOOST_PP_ENUM(N, BOOST_FUSION_AS_FUSION_ELEMENT, _)> - make_set(BOOST_PP_ENUM_BINARY_PARAMS(N, T, const& _)) + make_set(BOOST_PP_ENUM_BINARY_PARAMS(N, T, const& arg)) { return set<BOOST_PP_ENUM(N, BOOST_FUSION_AS_FUSION_ELEMENT, _)>( - BOOST_PP_ENUM_PARAMS(N, _)); + BOOST_PP_ENUM_PARAMS(N, arg)); } #undef N |