]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Bug 3954: compile failure in CpuAffinity.cc
authorUnknown FreeBSD Contributor <>
Mon, 27 Jan 2014 02:11:08 +0000 (19:11 -0700)
committerAmos Jeffries <squid3@treenet.co.nz>
Mon, 27 Jan 2014 02:11:08 +0000 (19:11 -0700)
Patch written by 'dim [1]' contributor to FreeBSD and imported to Squid
under FreeBSD license. see
http://svnweb.freebsd.org/ports/head/www/squid33/files/patch-include__Array.h

src/base/Vector.h

index 8b083b1cc12bd0f094ab258cd78f148c3ec72c2f..5f430955b03b739fae7ac18647ea3dcf4d211f32 100644 (file)
 #include "compat/assert.h"
 
 /* iterator support */
+#include <iterator>
 
 template <class C>
 class VectorIteratorBase
 {
-
 public:
+    typedef typename C::value_type value_type;
+    typedef std::forward_iterator_tag iterator_category;
+    typedef typename C::pointer pointer;
+    typedef typename C::reference reference;
+    typedef typename C::difference_type difference_type;
+
     VectorIteratorBase();
     VectorIteratorBase(C &);
     VectorIteratorBase(size_t, C &);
@@ -75,12 +81,13 @@ private:
 template<class E>
 class Vector
 {
-
 public:
     typedef E value_type;
     typedef E* pointer;
+    typedef E& reference;
     typedef VectorIteratorBase<Vector<E> > iterator;
     typedef VectorIteratorBase<Vector<E> const> const_iterator;
+    typedef ptrdiff_t difference_type;
 
     void *operator new (size_t);
     void operator delete (void *);