From: David Wells Date: Thu, 13 Aug 2015 03:05:30 +0000 (-0400) Subject: Remove apple gcc-3.3 compatability. X-Git-Tag: v8.4.0-rc2~563^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1dacd9901e0941ca7bc874b47273d53c2001ec0e;p=dealii.git Remove apple gcc-3.3 compatability. The last release of the 3.3 branch was in 2005, and this bug was fixed in gcc4.0 (released in 2007). A historical note: the mentioned bug was reported by deal.II developers in 2005. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331 for further discussion (from Kayser-Herold and Bangerth). --- diff --git a/source/grid/tria_accessor.cc b/source/grid/tria_accessor.cc index 155769f152..2b253f71b3 100644 --- a/source/grid/tria_accessor.cc +++ b/source/grid/tria_accessor.cc @@ -2277,11 +2277,6 @@ neighbor_child_on_subface (const unsigned int face, -// Remark: The explicit instantiations for "TriaAccessor" were moved -// to the top of this source file. The reason is a slightly buggy version -// of the Apple gcc v.3.3. -// For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331 - // explicit instantiations #include "tria_accessor.inst" diff --git a/source/grid/tria_accessor.inst.in b/source/grid/tria_accessor.inst.in index dc44735759..f9511a2dcb 100644 --- a/source/grid/tria_accessor.inst.in +++ b/source/grid/tria_accessor.inst.in @@ -17,10 +17,6 @@ for (deal_II_dimension : DIMENSIONS) { -// Remark: The explicit instantiations for "TriaAccessor" were moved -// to the top of this source file. The reason is a slightly buggy version -// of the Apple gcc v.3.3. -// For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331 template class TriaAccessorBase<1,deal_II_dimension>; #if deal_II_dimension >= 2 template class TriaAccessorBase<2,deal_II_dimension>; diff --git a/source/lac/block_sparsity_pattern.cc b/source/lac/block_sparsity_pattern.cc index 88ac861bb8..62bb2323e8 100644 --- a/source/lac/block_sparsity_pattern.cc +++ b/source/lac/block_sparsity_pattern.cc @@ -321,29 +321,6 @@ BlockSparsityPatternBase::print_gnuplot(std::ostream &out) - -// Remark: The following explicit instantiations needed to be moved to -// this place here to work around a problem with gcc3.3 on Apple MacOSX. -// The reason is that some of the functions instantiated here are used -// further down; if they are not explicitly instantiated here, then the -// compiler will do an implicit instantiation and give it internal linkage -// (despite the later explicit instantiation that should make sure it -// gets external linkage). To make sure the functions have external -// linkage, we need to place the explicit instantiation before the first -// use. -// -// For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331 -// +++++++++++++ - - -template class BlockSparsityPatternBase; -template class BlockSparsityPatternBase; -#ifdef DEAL_II_WITH_TRILINOS -template class BlockSparsityPatternBase; -#endif - - - BlockSparsityPattern::BlockSparsityPattern () {} @@ -709,9 +686,10 @@ namespace TrilinosWrappers #endif -// Remark: The explicit instantiations for "BlockSparsityPatternBase" were moved -// to the top of this source file. The reason is a slightly buggy version -// of the Apple gcc v.3.3. -// For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331 +template class BlockSparsityPatternBase; +template class BlockSparsityPatternBase; +#ifdef DEAL_II_WITH_TRILINOS +template class BlockSparsityPatternBase; +#endif DEAL_II_NAMESPACE_CLOSE