// { dg-do assemble  }
// Origin: David Mazieres <dm@amsterdam.lcs.mit.edu>

template<class T> struct vector_base {
  typedef T elm_t;
protected:
  union {
    double alignment_hack;
    char defbuf_space[2 * sizeof (elm_t)];
  };
  elm_t *def_basep () { return reinterpret_cast<elm_t *> (defbuf_space); }
};

template<class T> struct vector : public vector_base<T> {
  vector () { this->def_basep (); }
};

vector<int> iv;
