@@ -27,7 +27,7 @@ struct HypreOptParse
27
27
if (pp.contains (key.c_str ())) {
28
28
int val;
29
29
pp.query (key.c_str (), val);
30
- func (solver, val);
30
+ std::forward<F>( func) (solver, val);
31
31
}
32
32
}
33
33
@@ -36,15 +36,15 @@ struct HypreOptParse
36
36
{
37
37
T val = default_val;
38
38
pp.queryAdd (key.c_str (), val);
39
- func (solver, val);
39
+ std::forward<F>( func) (solver, val);
40
40
}
41
41
42
42
template <typename F, typename T>
43
43
void operator () (const std::string& key, F&& func, T default_val, int index)
44
44
{
45
45
T val = default_val;
46
46
pp.queryAdd (key.c_str (), val);
47
- func (solver, val, index );
47
+ std::forward<F>( func) (solver, val, index );
48
48
}
49
49
50
50
template <typename T, typename F>
@@ -53,7 +53,7 @@ struct HypreOptParse
53
53
if (pp.contains (key.c_str ())) {
54
54
T val;
55
55
pp.query (key.c_str (), val);
56
- func (solver, val);
56
+ std::forward<F>( func) (solver, val);
57
57
}
58
58
}
59
59
};
@@ -165,7 +165,7 @@ void HypreIJIface::solve (
165
165
amrex::Print () << " HYPRE " << m_solver_name
166
166
<< " : Num. iterations = " << m_num_iterations
167
167
<< " ; Relative residual = " << m_final_res_norm
168
- << std::endl ;
168
+ << ' \n ' ;
169
169
}
170
170
}
171
171
@@ -183,7 +183,7 @@ void HypreIJIface::parse_inputs (const std::string& prefix)
183
183
if (m_verbose > 2 ) {
184
184
amrex::Print () << " HYPRE: solver = " << m_solver_name
185
185
<< " ; preconditioner = " << m_preconditioner_name
186
- << std::endl ;
186
+ << ' \n ' ;
187
187
}
188
188
189
189
if (m_preconditioner_name == " none" ) {
@@ -235,7 +235,7 @@ void HypreIJIface::init_solver (
235
235
void HypreIJIface::boomeramg_precond_configure (const std::string& prefix)
236
236
{
237
237
if (m_verbose > 2 ) {
238
- amrex::Print () << " Creating BoomerAMG preconditioner" << std::endl ;
238
+ amrex::Print () << " Creating BoomerAMG preconditioner" << ' \n ' ;
239
239
}
240
240
HYPRE_BoomerAMGCreate (&m_precond);
241
241
@@ -433,7 +433,7 @@ void HypreIJIface::boomeramg_solver_configure (const std::string& prefix)
433
433
void HypreIJIface::gmres_solver_configure (const std::string& prefix)
434
434
{
435
435
if (m_verbose > 2 ) {
436
- amrex::Print () << " Creating GMRES solver" << std::endl ;
436
+ amrex::Print () << " Creating GMRES solver" << ' \n ' ;
437
437
}
438
438
HYPRE_ParCSRGMRESCreate (m_comm, &m_solver);
439
439
0 commit comments