[DDK]
[reactos.git] / include / crt / new.h
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _INC_NEW
7 #define _INC_NEW
8
9 #ifdef __cplusplus
10
11 #include <new>
12
13 #include <crtdefs.h>
14
15 #pragma push_macro("new")
16 #undef new
17
18 #ifndef __NOTHROW_T_DEFINED
19 #define __NOTHROW_T_DEFINED
20 #endif
21
22 #ifndef __PLACEMENT_NEW_INLINE
23 #define __PLACEMENT_NEW_INLINE
24 #endif
25
26 _CRTIMP int __cdecl _query_new_mode(void);
27 _CRTIMP int __cdecl _set_new_mode(int _NewMode);
28
29 #ifndef _PNH_DEFINED
30 typedef int (__cdecl *_PNH)(size_t);
31 #define _PNH_DEFINED
32 #endif
33
34 _CRTIMP _PNH __cdecl _query_new_handler(void);
35 _CRTIMP _PNH __cdecl _set_new_handler(_PNH _NewHandler);
36
37 #ifndef _NO_ANSI_NH_DEFINED
38 #define _NO_ANSI_NEW_HANDLER ((new_handler)-1)
39 #define _NO_ANSI_NEW_HANDLER_M ((_new_handler_m)-1)
40 #define _NO_ANSI_NH_DEFINED
41 #endif
42
43 #pragma pop_macro("new")
44 #endif
45 #endif