]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Remove apple gcc-3.3 compatability.
authorDavid Wells <drwells@vt.edu>
Thu, 13 Aug 2015 03:05:30 +0000 (23:05 -0400)
committerDavid Wells <drwells@vt.edu>
Fri, 21 Aug 2015 13:55:04 +0000 (09:55 -0400)
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).

source/grid/tria_accessor.cc
source/grid/tria_accessor.inst.in
source/lac/block_sparsity_pattern.cc

index 155769f1524926342796f5a723dfbd0f5ffeb4ce..2b253f71b3214451d21e05c71e1ebf464b7f01e8 100644 (file)
@@ -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"
 
index dc4473575921648b5552f2a4e41236c20d0222ca..f9511a2dcb1d81902bcda36caa1f9501e05b2789 100644 (file)
 
 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>;
index 88ac861bb839b0f2e4bc214f834f50afd22895f8..62bb2323e8f66458088c4ee30f22a765a52458be 100644 (file)
@@ -321,29 +321,6 @@ BlockSparsityPatternBase<SparsityPatternBase>::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<SparsityPattern>;
-template class BlockSparsityPatternBase<DynamicSparsityPattern>;
-#ifdef DEAL_II_WITH_TRILINOS
-template class BlockSparsityPatternBase<TrilinosWrappers::SparsityPattern>;
-#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<SparsityPattern>;
+template class BlockSparsityPatternBase<DynamicSparsityPattern>;
+#ifdef DEAL_II_WITH_TRILINOS
+template class BlockSparsityPatternBase<TrilinosWrappers::SparsityPattern>;
+#endif
 
 DEAL_II_NAMESPACE_CLOSE

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.