From d45f6c7539a029b497fc5aec0f7a6103153c4d55 Mon Sep 17 00:00:00 2001 From: deal Date: Thu, 4 Mar 2004 16:22:26 +0000 Subject: [PATCH] Work around another bug in icc with static member templates of template classes. git-svn-id: https://svn.dealii.org/trunk@8660 0785d39b-7218-0410-832d-ea1e28bc413d --- .../source/numerics/error_estimator.cc | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/deal.II/deal.II/source/numerics/error_estimator.cc b/deal.II/deal.II/source/numerics/error_estimator.cc index ee1e839af8..5d218ad2a0 100644 --- a/deal.II/deal.II/source/numerics/error_estimator.cc +++ b/deal.II/deal.II/source/numerics/error_estimator.cc @@ -648,10 +648,25 @@ KellyErrorEstimator::estimate (const Mapping &mapping // split all cells into threads if // multithreading is used and run - // the whole thing + // the whole thing. use the + // function pointer variable to + // work around another nasty bug in + // icc7 Threads::ThreadGroup<> threads; + void (*estimate_some_ptr) (const Mapping &, + const DoFHandler &, + const Quadrature &, + const typename FunctionMap::type &, + const std::vector &, + const std::vector &, + const Function *, + const std::pair, + FaceIntegrals &, + PerThreadData &) + = &KellyErrorEstimator::template estimate_some; + for (unsigned int i=0; i::template estimate_some) + threads += Threads::spawn (estimate_some_ptr) (mapping, dof_handler, quadrature, neumann_bc, solutions, component_mask, coefficients, -- 2.39.5