// PR c++/34158

typedef __SIZE_TYPE__ size_t;
extern "C" void* malloc (size_t);
extern "C" void free (void *);

template <class T> class undef;

struct A {
  A() { throw 1; }
};

template<typename T> class Pool { };

void *operator new(size_t size,Pool<int>& pool)
{
  return malloc(size);
}

template<typename T>
void operator delete(void *p,Pool<T>& pool)
{
  undef<T> t;			// { dg-error "incomplete" }
  free(p);
}

int main ()
{
  Pool<int> pool;
  new (pool) A();		// { dg-message "required" }
  return 0;
}
