]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Remove DEAL_II_BOOST_BIND_COMPILER_BUG. 4738/head
authorDavid Wells <wellsd2@rpi.edu>
Tue, 8 Aug 2017 23:02:57 +0000 (19:02 -0400)
committerDavid Wells <wellsd2@rpi.edu>
Wed, 9 Aug 2017 00:28:30 +0000 (20:28 -0400)
Reverts 0d2f17a9840 and d92bec4da6d.

cmake/checks/check_03_compiler_bugs.cmake
include/deal.II/base/config.h.in
include/deal.II/lac/vector.h
source/lac/vector.cc

index 74d2fad69014dc58f49260283ee8f12e1df12e36..c07b9aaea0c8fa4cb005ef5d3d4db806e314eb0d 100644 (file)
@@ -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 <complex>
-    #include <iostream>
-    #include \"${BOOST_FOLDER}/include/boost/bind.hpp\"
-
-    template<typename number>
-    void bug_function (number test)
-    {
-      std::cout << test << std::endl;
-    }
-    int main()
-    {
-      std::complex<float> float_val (1., 2.);
-      boost::bind(&bug_function<std::complex<float> >,
-                  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(),
index 733fb6c4aa14362060ec13c4c71d4172468b2cd0..0700fe7bfb73e646406e67df2f6fe4124270b1d1 100644 (file)
@@ -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
 
index dbc916415523940c726c42b86322786dcdde698f..41d083234f313c8857147db0068efc26f5c90856 100644 (file)
@@ -967,14 +967,6 @@ private:
 
 
 //------------------------ declarations for explicit specializations
-
-#ifdef DEAL_II_BOOST_BIND_COMPILER_BUG
-template <>
-Vector<std::complex<float> > &
-Vector<std::complex<float> >::operator= (const std::complex<float> s);
-#endif
-
-
 template <>
 Vector<int>::real_type
 Vector<int>::lp_norm (const real_type) const;
index 5e04c9ac6a9c4be75618f94565d65ecfbc2dc90c..a1f97a6787e2966f4ba6f11c48c6d11f9b6e621d 100644 (file)
@@ -61,20 +61,7 @@ TEMPL_OP_EQ(std::complex<float>,std::complex<double>);
 
 #undef TEMPL_OP_EQ
 
-#ifdef DEAL_II_BOOST_BIND_COMPILER_BUG
-template <>
-Vector<std::complex<float> > &
-Vector<std::complex<float> >::operator= (const std::complex<float> s)
-{
-  AssertIsFinite(s);
-  if (s != std::complex<float>())
-    Assert (vec_size!=0, ExcEmptyObject());
-  if (vec_size!=0)
-    std::fill (begin(), end(), s);
 
-  return *this;
-}
-#endif
 
 template <>
 Vector<int>::real_type

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.