From: Daniel Arndt Date: Sat, 9 Oct 2021 04:25:04 +0000 (-0400) Subject: Avoid lambda function to compile with Intel 18/19. X-Git-Tag: v9.3.2~5^2~2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=36a2efbeffff7c87bb9a224596bce0c763a7b8d8;p=dealii.git Avoid lambda function to compile with Intel 18/19. --- diff --git a/include/deal.II/numerics/vector_tools_evaluate.h b/include/deal.II/numerics/vector_tools_evaluate.h index 22345670ba..aa8db8763c 100644 --- a/include/deal.II/numerics/vector_tools_evaluate.h +++ b/include/deal.II/numerics/vector_tools_evaluate.h @@ -211,18 +211,6 @@ namespace VectorTools std::vector>> evaluators(dof_handler.get_fe_collection().size()); - const auto get_evaluator = [&](const unsigned int active_fe_index) - -> FEPointEvaluation & { - if (evaluators[active_fe_index] == nullptr) - evaluators[active_fe_index] = - std::make_unique>( - cache.get_mapping(), - dof_handler.get_fe(active_fe_index), - update_values); - - return *evaluators[active_fe_index]; - }; - for (unsigned int i = 0; i < cell_data.cells.size(); ++i) { typename DoFHandler::active_cell_iterator cell = { @@ -243,7 +231,11 @@ namespace VectorTools solution_values.begin(), solution_values.end()); - auto &evaluator = get_evaluator(cell->active_fe_index()); + if (evaluators[cell->active_fe_index()] == nullptr) + evaluators[cell->active_fe_index()] = + std::make_unique>( + cache.get_mapping(), cell->get_fe(), update_flags); + auto &evaluator = *evaluators[cell->active_fe_index()]; evaluator.reinit(cell, unit_points); evaluator.evaluate(solution_values,