From 846baab1096fcbb959e9c643718c3bacfa300738 Mon Sep 17 00:00:00 2001 From: David Wells Date: Tue, 8 Aug 2017 19:02:57 -0400 Subject: [PATCH] Remove DEAL_II_BOOST_BIND_COMPILER_BUG. Reverts 0d2f17a9840 and d92bec4da6d. --- cmake/checks/check_03_compiler_bugs.cmake | 32 ----------------------- include/deal.II/base/config.h.in | 1 - include/deal.II/lac/vector.h | 8 ------ source/lac/vector.cc | 13 --------- 4 files changed, 54 deletions(-) diff --git a/cmake/checks/check_03_compiler_bugs.cmake b/cmake/checks/check_03_compiler_bugs.cmake index 74d2fad690..c07b9aaea0 100644 --- a/cmake/checks/check_03_compiler_bugs.cmake +++ b/cmake/checks/check_03_compiler_bugs.cmake @@ -255,38 +255,6 @@ IF(DEAL_II_TYPE_QUALIFIER_BUG) ENDIF() -# -# On Mac OS X, gcc appears to have a bug that prevents us from -# compiling a bit of code that involves boost::bind. Check for -# that. -# -# - Wolfgang Bangerth, Matthias Maier, rewritten 2012 -# -IF(DEAL_II_HAVE_BUNDLED_DIRECTORY) - CHECK_CXX_COMPILER_BUG( - " - #include - #include - #include \"${BOOST_FOLDER}/include/boost/bind.hpp\" - - template - void bug_function (number test) - { - std::cout << test << std::endl; - } - int main() - { - std::complex float_val (1., 2.); - boost::bind(&bug_function >, - float_val)(); - return 0; - } - " - DEAL_II_BOOST_BIND_COMPILER_BUG - ) -ENDIF() - - # # Microsoft Visual C++ has a bug where the resulting object # from calling std::bind does not have a const operator(), diff --git a/include/deal.II/base/config.h.in b/include/deal.II/base/config.h.in index 733fb6c4aa..0700fe7bfb 100644 --- a/include/deal.II/base/config.h.in +++ b/include/deal.II/base/config.h.in @@ -69,7 +69,6 @@ #cmakedefine DEAL_II_MEMBER_ARRAY_SPECIALIZATION_BUG #cmakedefine DEAL_II_MEMBER_VAR_SPECIALIZATION_BUG #cmakedefine DEAL_II_CONST_MEMBER_DEDUCTION_BUG -#cmakedefine DEAL_II_BOOST_BIND_COMPILER_BUG #cmakedefine DEAL_II_BIND_NO_CONST_OP_PARENTHESES #cmakedefine DEAL_II_CONSTEXPR_BUG diff --git a/include/deal.II/lac/vector.h b/include/deal.II/lac/vector.h index dbc9164155..41d083234f 100644 --- a/include/deal.II/lac/vector.h +++ b/include/deal.II/lac/vector.h @@ -967,14 +967,6 @@ private: //------------------------ declarations for explicit specializations - -#ifdef DEAL_II_BOOST_BIND_COMPILER_BUG -template <> -Vector > & -Vector >::operator= (const std::complex s); -#endif - - template <> Vector::real_type Vector::lp_norm (const real_type) const; diff --git a/source/lac/vector.cc b/source/lac/vector.cc index 5e04c9ac6a..a1f97a6787 100644 --- a/source/lac/vector.cc +++ b/source/lac/vector.cc @@ -61,20 +61,7 @@ TEMPL_OP_EQ(std::complex,std::complex); #undef TEMPL_OP_EQ -#ifdef DEAL_II_BOOST_BIND_COMPILER_BUG -template <> -Vector > & -Vector >::operator= (const std::complex s) -{ - AssertIsFinite(s); - if (s != std::complex()) - Assert (vec_size!=0, ExcEmptyObject()); - if (vec_size!=0) - std::fill (begin(), end(), s); - return *this; -} -#endif template <> Vector::real_type -- 2.39.5