OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. |
3 * Copyright (C) 2013 Google Inc. All rights reserved. | 3 * Copyright (C) 2013 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 22 matching lines...) Expand all Loading... |
33 Note, this file uses many GCC extensions, but it should be compatible with | 33 Note, this file uses many GCC extensions, but it should be compatible with |
34 C, Objective C, C++, and Objective C++. | 34 C, Objective C, C++, and Objective C++. |
35 | 35 |
36 For non-debug builds, everything is disabled by default, except for the | 36 For non-debug builds, everything is disabled by default, except for the |
37 RELEASE_ASSERT family of macros. | 37 RELEASE_ASSERT family of macros. |
38 | 38 |
39 Defining any of the symbols explicitly prevents this from having any effect. | 39 Defining any of the symbols explicitly prevents this from having any effect. |
40 | 40 |
41 */ | 41 */ |
42 | 42 |
43 #include "wtf/Platform.h" | |
44 | |
45 #include <stddef.h> | 43 #include <stddef.h> |
46 | 44 |
47 #if !COMPILER(MSVC) | 45 #if !COMPILER(MSVC) |
48 #include <inttypes.h> | 46 #include <inttypes.h> |
49 #endif | 47 #endif |
50 | 48 |
51 #include "wtf/WTFExport.h" | 49 #include "wtf/WTFExport.h" |
52 | 50 |
53 #ifdef NDEBUG | 51 #ifdef NDEBUG |
54 /* Disable ASSERT* macros in release mode. */ | 52 /* Disable ASSERT* macros in release mode. */ |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
372 #define RELEASE_ASSERT(assertion) (UNLIKELY(!(assertion)) ? (IMMEDIATE_CRASH())
: (void)0) | 370 #define RELEASE_ASSERT(assertion) (UNLIKELY(!(assertion)) ? (IMMEDIATE_CRASH())
: (void)0) |
373 #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) RELEASE_ASSERT(assertion) | 371 #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) RELEASE_ASSERT(assertion) |
374 #define RELEASE_ASSERT_NOT_REACHED() IMMEDIATE_CRASH() | 372 #define RELEASE_ASSERT_NOT_REACHED() IMMEDIATE_CRASH() |
375 #else | 373 #else |
376 #define RELEASE_ASSERT(assertion) ASSERT(assertion) | 374 #define RELEASE_ASSERT(assertion) ASSERT(assertion) |
377 #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) ASSERT_WITH_MESSAGE(assertio
n, __VA_ARGS__) | 375 #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) ASSERT_WITH_MESSAGE(assertio
n, __VA_ARGS__) |
378 #define RELEASE_ASSERT_NOT_REACHED() ASSERT_NOT_REACHED() | 376 #define RELEASE_ASSERT_NOT_REACHED() ASSERT_NOT_REACHED() |
379 #endif | 377 #endif |
380 | 378 |
381 #endif /* WTF_Assertions_h */ | 379 #endif /* WTF_Assertions_h */ |
OLD | NEW |