]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Finally fix kind'o very strange problem, which made the compiler choose a global...
authorwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 7 May 1999 11:29:14 +0000 (11:29 +0000)
committerwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 7 May 1999 11:29:14 +0000 (11:29 +0000)
git-svn-id: https://svn.dealii.org/trunk@1296 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/include/grid/tria_accessor.h
deal.II/deal.II/include/grid/tria_iterator.templates.h

index a38f7bc9f5edae2a175c390f60ffb60ddc71d5e0..25d6a995466f0522da0c16c68cd38697fcd2badb 100644 (file)
@@ -97,33 +97,36 @@ class TriaAccessor {
                                      */
     TriaAccessor &operator = (const TriaAccessor &);
 
-  public:
+  protected:
+    
                                     /**
                                      *  Compare for equality.            
-                                     *
-                                     *  This method should be protected,
-                                     *  since it is only to be called from
-                                     *  the iterator class. Due to problems
-                                     *  with the STL, we have to make it
-                                     *  public, so don't use it from
-                                     *  non-friend classes!
                                      */
     bool operator == (const TriaAccessor &) const;
        
                                     /**
                                      *  Compare for inequality.
                                      *
-                                     *  This method should be protected,
-                                     *  since it is only to be called from
-                                     *  the iterator class. Due to problems
-                                     *  with the STL, we have to make it
-                                     *  public, so don't use it from
-                                     *  non-friend classes!
+                                     * Note that at times, there is a problem
+                                     * with egcs 1.1 that makes it choose
+                                     * the global STL operator != (which
+                                     * does only !(a==b)) over this
+                                     * one, which then results in an
+                                     * error because the operator == is
+                                     * not made public. Strange...
                                      */
     bool operator != (const TriaAccessor &) const;
     
   public:
+                                    /**
+                                     * Data type to be used for passing
+                                     * parameters from iterators to the
+                                     * accessor classes in a unified
+                                     * way, no matter what the type of
+                                     * number of these parameters is.
+                                     */
     typedef void* LocalData;
+    
                                     /**@ name Iterator address and state
                                      */
                                     /*@{*/
index a70ed1a0dfdb230f494629092e20018555fcabc2..6a336cf86919088841c2a631ed36d57f07b57f84 100644 (file)
@@ -67,7 +67,7 @@ template <int dim, typename Accessor>
 inline
 bool
 TriaRawIterator<dim,Accessor>::operator != (const TriaRawIterator<dim,Accessor> &i) const {
-  return accessor != i.accessor;
+  return accessor.operator != (i.accessor);
 };
 
 

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.