
#pragma once

#include <exception>


namespace std {

class bad_alloc : public exception {
public:
  bad_alloc ()  { }
  bad_alloc(const bad_alloc&)  { }
  bad_alloc& operator=(const bad_alloc&) {return *this;}
  ~bad_alloc () { }
  const char* what() const { return "bad alloc"; }
};

/*
class bad_cast : public exception 
{
public:
    bad_cast() throw() { }
    // This declaration is not useless:
    // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
     ~bad_cast() {};
};
*/

}


