]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Remove workarounds for DEAL_II_NAMESP_TEMPL_FRIEND_BUG from the source
authormaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 28 Sep 2012 15:31:02 +0000 (15:31 +0000)
committermaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 28 Sep 2012 15:31:02 +0000 (15:31 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_cmake@26842 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/base/symmetric_tensor.h
deal.II/include/deal.II/base/table.h
deal.II/include/deal.II/lac/block_matrix_base.h
deal.II/include/deal.II/lac/block_vector_base.h

index 39c626880eeff5bcf881a3d75e9eb4272c8acb36..a190398a659619ac4df70cf6b712622d71008e42 100644 (file)
@@ -407,7 +407,6 @@ namespace internal
                                          // as friends. make sure to
                                          // work around bugs in some
                                          // compilers
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
         template <int,int,typename> friend class SymmetricTensor;
         template <int,int,bool,int,typename>
         friend class Accessor;
@@ -415,10 +414,6 @@ namespace internal
         friend class ::dealii::SymmetricTensor<rank,dim,Number>;
         friend class Accessor<rank,dim,constness,P+1,Number>;
 #  endif
-#else
-        friend class SymmetricTensor<rank,dim,Number>;
-        friend class Accessor<rank,dim,constness,P+1,Number>;
-#endif
     };
 
 
@@ -526,7 +521,6 @@ namespace internal
                                          // as friends. make sure to
                                          // work around bugs in some
                                          // compilers
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
         template <int,int,typename> friend class SymmetricTensor;
         template <int,int,bool,int,typename>
         friend class SymmetricTensorAccessors::Accessor;
@@ -534,10 +528,6 @@ namespace internal
         friend class ::dealii::SymmetricTensor<rank,dim,Number>;
         friend class SymmetricTensorAccessors::Accessor<rank,dim,constness,2,Number>;
 #  endif
-#else
-        friend class SymmetricTensor<rank,dim,Number>;
-        friend class Accessor<rank,dim,constness,2,Number>;
-#endif
     };
   }
 }
index 531226662a74db98e89ac38b702e4a6870dd55de..051f680bf4816382926d45d5cd37e0aa6af48b49 100644 (file)
@@ -223,7 +223,6 @@ namespace internal
                                          // as friends. make sure to
                                          // work around bugs in some
                                          // compilers
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
         template <int N1, typename T1> friend class dealii::Table;
         template <int N1, typename T1, bool C1, unsigned int P1>
         friend class Accessor;
@@ -231,10 +230,6 @@ namespace internal
         friend class dealii::Table<N,T>;
         friend class Accessor<N,T,C,P+1>;
 #  endif
-#else
-        friend class Table<N,T>;
-        friend class Accessor<N,T,C,P+1>;
-#endif
     };
 
 
@@ -374,7 +369,6 @@ namespace internal
                                          // as friends. make sure to
                                          // work around bugs in some
                                          // compilers
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
         template <int N1, typename T1> friend class dealii::Table;
         template <int N1, typename T1, bool C1, unsigned int P1>
         friend class Accessor;
@@ -382,10 +376,6 @@ namespace internal
         friend class dealii::Table<2,T>;
         friend class Accessor<N,T,C,2>;
 #  endif
-#else
-        friend class Table<2,T>;
-        friend class Accessor<N,T,C,2>;
-#endif
     };
   }
 
index 8f68491ec64a12a3e638c156a56bdd74a0447815..2e3cecf83c78c5f2804c952f4e6e8f5408c5157b 100644 (file)
@@ -1237,20 +1237,11 @@ class BlockMatrixBase : public Subscriptor
                                       * friend. We have to work around
                                       * a compiler bug here again.
                                       */
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
     template <typename, bool>
     friend class BlockMatrixIterators::Accessor;
 
     template <typename>
     friend class MatrixIterator;
-#else
-    typedef BlockMatrixIterators::Accessor<BlockMatrixBase, true> ConstAccessor;
-    typedef BlockMatrixIterators::Accessor<BlockMatrixBase, false> Accessor;
-    friend class ConstAccessor;
-
-    friend class const_iterator;
-#endif
-
 };
 
 
index f5f3aaecbc4cc6a279bbfa24f1f2984bdecf7d58..33039ec2f134d9245fece9d44e370bc1dd944eaf 100644 (file)
@@ -645,7 +645,6 @@ namespace internal
         void move_backward ();
 
 
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
                                          /**
                                           * Mark all other instances of
                                           * this template as friends. In
@@ -653,19 +652,10 @@ namespace internal
                                           * inverse constness iterator
                                           * as friend, but this is
                                           * something that ISO C++ does
-                                          * not allow to specify. If we
-                                          * have detected a compiler bug
-                                          * during configuration of the
-                                          * library, use a workaround
-                                          * that works for this
-                                          * particular compiler, but is
-                                          * not ISO C++ conforming.
+                                          * not allow to specify.
                                           */
         template <typename N, bool C>
         friend class Iterator;
-#else
-        friend class InverseConstnessIterator;
-#endif
     };
   }  // namespace BlockVectorIterators
 }  // namespace internal
@@ -1165,16 +1155,10 @@ class BlockVectorBase : public Subscriptor
 
                                      /**
                                       * Make the iterator class a
-                                      * friend. We have to work around
-                                      * a compiler bug here again.
+                                      * friend.
                                       */
-#ifndef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
     template <typename N, bool C>
     friend class dealii::internal::BlockVectorIterators::Iterator;
-#else
-    friend class iterator;
-    friend class const_iterator;
-#endif
 
     template <typename> friend class BlockVectorBase;
 };

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.