$NetBSD$

--- ./async/vec.h.orig	2002-05-28 11:29:16.000000000 +0100
+++ ./async/vec.h
@@ -72,7 +72,14 @@ public:
 };
 
 template<class T, size_t N = 0> class vec : public vec_base<T, N> {
+	
   typedef typename vec_base<T, N>::elm_t elm_t;
+
+  vec_base<T, N>::basep;
+  vec_base<T, N>::firstp;
+  vec_base<T, N>::lastp;
+  vec_base<T, N>::limp;
+
   void move (elm_t *dst) {
     if (dst == firstp)
       return;
@@ -92,7 +99,7 @@ template<class T, size_t N = 0> class ve
     { return *new (implicit_cast<void *> (&e)) elm_t (v); }
   static void destroy (elm_t &e) { e.~elm_t (); }
 
-  void init () { lastp = firstp = basep = def_basep (); limp = def_limp (); }
+  void init () { lastp = firstp = basep = this->def_basep (); limp = this->def_limp (); }
   void del () { while (firstp < lastp) firstp++->~elm_t (); bfree (basep); }
 
 #define append(v)						\
