From 38008cac24658c8eb2bd9a9b34f3a00134955f38 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritsky Date: Wed, 19 Apr 2017 12:35:26 +0300 Subject: [PATCH] MSVC: fix compilation with tbb --- include/deal.II/base/function_parser.h | 9 +++++---- source/base/multithread_info.cc | 1 + source/base/utilities.cc | 12 ++++++++---- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/include/deal.II/base/function_parser.h b/include/deal.II/base/function_parser.h index 1499e919bb..c0d63888ce 100644 --- a/include/deal.II/base/function_parser.h +++ b/include/deal.II/base/function_parser.h @@ -26,10 +26,11 @@ #include #include -namespace mu -{ - class Parser; -} +#ifdef DEAL_II_WITH_MUPARSER +DEAL_II_DISABLE_EXTRA_DIAGNOSTICS +#include +DEAL_II_ENABLE_EXTRA_DIAGNOSTICS +#endif DEAL_II_NAMESPACE_OPEN diff --git a/source/base/multithread_info.cc b/source/base/multithread_info.cc index 60026df181..32d27baed2 100644 --- a/source/base/multithread_info.cc +++ b/source/base/multithread_info.cc @@ -25,6 +25,7 @@ # include #endif +#include #ifdef DEAL_II_WITH_THREADS # include diff --git a/source/base/utilities.cc b/source/base/utilities.cc index 301ec99aba..8e58d34cd9 100644 --- a/source/base/utilities.cc +++ b/source/base/utilities.cc @@ -13,6 +13,14 @@ // // --------------------------------------------------------------------- +#include + +// It's necessary to include winsock2.h before thread_local_storage.h, +// because Intel implementation of TBB includes winsock.h, +// and we'll get a conflict between winsock.h and winsock2.h otherwise. +#ifdef DEAL_II_MSVC +# include +#endif #include #include @@ -42,10 +50,6 @@ DEAL_II_ENABLE_EXTRA_DIAGNOSTICS # include #endif -#ifdef DEAL_II_MSVC -# include -#endif - DEAL_II_DISABLE_EXTRA_DIAGNOSTICS #ifdef DEAL_II_WITH_TRILINOS -- 2.39.5