Skip to content

Commit 9117bef

Browse files
authored
Merge pull request #1883 from LLNL/feature/bowen/replace-camp-expand-with-fold
cpp 17: Replace CAMP_EXPAND with fold expressions
2 parents fb6625c + 3869a7e commit 9117bef

File tree

1 file changed

+20
-14
lines changed

1 file changed

+20
-14
lines changed

include/RAJA/pattern/params/forall.hpp

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ void resolve_params_helper(ParamTuple& params_tuple,
3636
const camp::idx_seq<Seq...>&,
3737
Args&&... args)
3838
{
39-
CAMP_EXPAND(param_resolve(ExecPol {}, camp::get<Seq>(params_tuple),
40-
std::forward<Args>(args)...));
39+
(param_resolve(ExecPol {}, camp::get<Seq>(params_tuple),
40+
std::forward<Args>(args)...),
41+
...);
4142
}
4243

4344
template<typename ExecPol, typename... Params, typename... Args>
@@ -58,8 +59,9 @@ void init_params_helper(ParamTuple& params_tuple,
5859
const camp::idx_seq<Seq...>&,
5960
Args&&... args)
6061
{
61-
CAMP_EXPAND(param_init(ExecPol {}, camp::get<Seq>(params_tuple),
62-
std::forward<Args>(args)...));
62+
(param_init(ExecPol {}, camp::get<Seq>(params_tuple),
63+
std::forward<Args>(args)...),
64+
...);
6365
}
6466

6567
template<typename ExecPol, typename... Params, typename... Args>
@@ -76,7 +78,7 @@ template<typename ExecPol, typename ParamTuple, camp::idx_t... Seq>
7678
RAJA_HOST_DEVICE void combine_params_helper(const camp::idx_seq<Seq...>&,
7779
ParamTuple& params_tuple)
7880
{
79-
CAMP_EXPAND(param_combine(ExecPol {}, camp::get<Seq>(params_tuple)));
81+
(param_combine(ExecPol {}, camp::get<Seq>(params_tuple)), ...);
8082
}
8183

8284
template<typename EXEC_POL, typename T>
@@ -91,8 +93,9 @@ RAJA_HOST_DEVICE void combine_params_helper(const camp::idx_seq<Seq...>&,
9193
ParamTuple& params_tuple,
9294
const ParamTuple& params_tuple_in)
9395
{
94-
CAMP_EXPAND(param_combine(ExecPol {}, camp::get<Seq>(params_tuple),
95-
camp::get<Seq>(params_tuple_in)));
96+
(param_combine(ExecPol {}, camp::get<Seq>(params_tuple),
97+
camp::get<Seq>(params_tuple_in)),
98+
...);
9699
}
97100

98101
template<typename ExecPol, typename... Params>
@@ -143,8 +146,9 @@ struct ForallParamPack
143146
ForallParamPack& f_params,
144147
Args&&... args)
145148
{
146-
CAMP_EXPAND(param_init(pol, camp::get<Seq>(f_params.param_tup),
147-
std::forward<Args>(args)...));
149+
(param_init(pol, camp::get<Seq>(f_params.param_tup),
150+
std::forward<Args>(args)...),
151+
...);
148152
}
149153

150154
// Combine
@@ -155,8 +159,9 @@ struct ForallParamPack
155159
ForallParamPack& out,
156160
const ForallParamPack& in)
157161
{
158-
CAMP_EXPAND(param_combine(pol, camp::get<Seq>(out.param_tup),
159-
camp::get<Seq>(in.param_tup)));
162+
(param_combine(pol, camp::get<Seq>(out.param_tup),
163+
camp::get<Seq>(in.param_tup)),
164+
...);
160165
}
161166

162167
template<typename EXEC_POL, camp::idx_t... Seq>
@@ -165,7 +170,7 @@ struct ForallParamPack
165170
camp::idx_seq<Seq...>,
166171
ForallParamPack& f_params)
167172
{
168-
CAMP_EXPAND(param_combine(pol, camp::get<Seq>(f_params.param_tup)));
173+
(param_combine(pol, camp::get<Seq>(f_params.param_tup)), ...);
169174
}
170175

171176
// Resolve
@@ -175,8 +180,9 @@ struct ForallParamPack
175180
ForallParamPack& f_params,
176181
Args&&... args)
177182
{
178-
CAMP_EXPAND(param_resolve(pol, camp::get<Seq>(f_params.param_tup),
179-
std::forward<Args>(args)...));
183+
(param_resolve(pol, camp::get<Seq>(f_params.param_tup),
184+
std::forward<Args>(args)...),
185+
...);
180186
}
181187

182188
// Used to construct the argument TYPES that will be invoked with the lambda.

0 commit comments

Comments
 (0)