From: deal Date: Thu, 4 Mar 2004 16:22:26 +0000 (+0000) Subject: Work around another bug in icc with static member templates of X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5d93a8b16fd7e5062052f6f017b2609a8740e141;p=dealii-svn.git 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 --- 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,