| 1 | // Licensed to the .NET Foundation under one or more agreements. |
| 2 | // The .NET Foundation licenses this file to you under the MIT license. |
| 3 | // See the LICENSE file in the project root for more information. |
| 4 | // |
| 5 | |
| 6 | // |
| 7 | |
| 8 | #ifndef __new__hpp |
| 9 | #define __new__hpp |
| 10 | |
| 11 | #if defined(_MSC_VER) && _MSC_VER < 1900 |
| 12 | #define NOEXCEPT |
| 13 | #else |
| 14 | #define NOEXCEPT noexcept |
| 15 | #endif |
| 16 | |
| 17 | struct NoThrow { int x; }; |
| 18 | extern const NoThrow nothrow; |
| 19 | |
| 20 | void * __cdecl operator new(size_t n, const NoThrow&) NOEXCEPT; |
| 21 | void * __cdecl operator new[](size_t n, const NoThrow&) NOEXCEPT; |
| 22 | |
| 23 | #ifdef _DEBUG |
| 24 | void DisableThrowCheck(); |
| 25 | #endif |
| 26 | |
| 27 | #endif |
| 28 | |