mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 09:25:10 +00:00

- start using our own c++ headers and forward stlport ones to them in msvc build. - fix fpecode declaration for MSVC. [CMAKE] - cardlib is a cpp library. Now stlport compiles with msvc. svn path=/branches/cmake-bringup/; revision=49552
51 lines
1.4 KiB
Text
51 lines
1.4 KiB
Text
// Standard C++ dynamic memory management header
|
|
|
|
#ifndef _NEW
|
|
#define _NEW
|
|
|
|
#include <cstddef>
|
|
#include <exception>
|
|
|
|
extern "C++" {
|
|
|
|
namespace std
|
|
{
|
|
class bad_alloc : public exception
|
|
{
|
|
public:
|
|
bad_alloc() throw() { }
|
|
|
|
// This declaration is not useless:
|
|
// http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
|
|
virtual ~bad_alloc() throw();
|
|
|
|
// See comment in eh_exception.cc.
|
|
virtual const char* what() const throw();
|
|
};
|
|
|
|
struct nothrow_t { };
|
|
|
|
extern const nothrow_t nothrow;
|
|
} // namespace std
|
|
|
|
typedef void (*new_handler)();
|
|
|
|
new_handler set_new_handler(new_handler) throw();
|
|
|
|
void* operator new (std::size_t size) throw (std::bad_alloc);
|
|
void* operator new (std::size_t size, const std::nothrow_t& nothrow_constant) throw();
|
|
void* operator new (std::size_t size, void* ptr) throw();
|
|
void* operator new[] (std::size_t size) throw (std::bad_alloc);
|
|
void* operator new[] (std::size_t size, const std::nothrow_t& nothrow_constant) throw();
|
|
void* operator new[] (std::size_t size, void* ptr) throw();
|
|
|
|
void operator delete (void* ptr) throw ();
|
|
void operator delete (void* ptr, const std::nothrow_t& nothrow_constant) throw();
|
|
void operator delete (void* ptr, void* voidptr2) throw();
|
|
void operator delete[] (void* ptr) throw ();
|
|
void operator delete[] (void* ptr, const std::nothrow_t& nothrow_constant) throw();
|
|
void operator delete[] (void* ptr, void* voidptr2) throw();
|
|
//@}
|
|
} // extern "C++"
|
|
|
|
#endif
|