OLD | NEW |
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ | 5 #ifndef PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ |
6 #define PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ | 6 #define PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ |
7 | 7 |
8 #include <assert.h> | 8 #include <assert.h> |
9 #include <stdlib.h> | 9 #include <stdlib.h> |
10 | 10 |
11 #define CHECK(condition) \ | 11 #ifndef _WIN32 |
12 if (!(condition)) { \ | 12 #define NULL_DEREF_IF_POSSIBLE \ |
13 abort(); \ | 13 *(reinterpret_cast<volatile char*>(NULL) + 42) = 0x42; |
14 *(reinterpret_cast<volatile char*>(NULL) + 42) = 0x42; \ | 14 #else |
| 15 #define NULL_DEREF_IF_POSSIBLE |
| 16 #endif |
| 17 |
| 18 #define CHECK(condition) \ |
| 19 if (!(condition)) { \ |
| 20 abort(); \ |
| 21 NULL_DEREF_IF_POSSIBLE \ |
15 } | 22 } |
16 | 23 |
17 #define NOTREACHED() assert(false) | 24 #define NOTREACHED() assert(false) |
18 | 25 |
19 #endif // PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ | 26 #endif // PDFIUM_THIRD_PARTY_BASE_LOGGING_H_ |
OLD | NEW |