OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2011, 2012 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 /* Specific compiler features */ | 74 /* Specific compiler features */ |
75 #if !COMPILER(CLANG) && _MSC_VER >= 1600 | 75 #if !COMPILER(CLANG) && _MSC_VER >= 1600 |
76 #define WTF_COMPILER_SUPPORTS_CXX_NULLPTR 1 | 76 #define WTF_COMPILER_SUPPORTS_CXX_NULLPTR 1 |
77 #endif | 77 #endif |
78 | 78 |
79 #if COMPILER(CLANG) | 79 #if COMPILER(CLANG) |
80 /* Keep strong enums turned off when building with clang-cl: We cannot yet build
all of Blink without fallback to cl.exe, and strong enums are exposed at ABI bo
undaries. */ | 80 /* Keep strong enums turned off when building with clang-cl: We cannot yet build
all of Blink without fallback to cl.exe, and strong enums are exposed at ABI bo
undaries. */ |
81 #undef WTF_COMPILER_SUPPORTS_CXX_STRONG_ENUMS | 81 #undef WTF_COMPILER_SUPPORTS_CXX_STRONG_ENUMS |
82 #else | 82 #else |
83 #define WTF_COMPILER_SUPPORTS_CXX_OVERRIDE_CONTROL 1 | 83 #define WTF_COMPILER_SUPPORTS_CXX_OVERRIDE_CONTROL 1 |
84 #define WTF_COMPILER_QUIRK_FINAL_IS_CALLED_SEALED 1 | |
85 #endif | 84 #endif |
86 | 85 |
87 #endif | 86 #endif |
88 | 87 |
89 /* COMPILER(GCC) - GNU Compiler Collection */ | 88 /* COMPILER(GCC) - GNU Compiler Collection */ |
90 #if defined(__GNUC__) | 89 #if defined(__GNUC__) |
91 #define WTF_COMPILER_GCC 1 | 90 #define WTF_COMPILER_GCC 1 |
92 #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL
__) | 91 #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL
__) |
93 #define GCC_VERSION_AT_LEAST(major, minor, patch) (GCC_VERSION >= (major * 10000
+ minor * 100 + patch)) | 92 #define GCC_VERSION_AT_LEAST(major, minor, patch) (GCC_VERSION >= (major * 10000
+ minor * 100 + patch)) |
94 #else | 93 #else |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
202 #if COMPILER(GCC) | 201 #if COMPILER(GCC) |
203 #define ALLOW_UNUSED __attribute__((unused)) | 202 #define ALLOW_UNUSED __attribute__((unused)) |
204 #else | 203 #else |
205 #define ALLOW_UNUSED | 204 #define ALLOW_UNUSED |
206 #endif | 205 #endif |
207 | 206 |
208 /* OVERRIDE and FINAL */ | 207 /* OVERRIDE and FINAL */ |
209 | 208 |
210 #if COMPILER_SUPPORTS(CXX_OVERRIDE_CONTROL) | 209 #if COMPILER_SUPPORTS(CXX_OVERRIDE_CONTROL) |
211 #define OVERRIDE override | 210 #define OVERRIDE override |
212 | |
213 #if COMPILER_QUIRK(FINAL_IS_CALLED_SEALED) | |
214 #define FINAL sealed | |
215 #else | |
216 #define FINAL final | 211 #define FINAL final |
217 #endif | |
218 | |
219 #else | 212 #else |
220 #define OVERRIDE | 213 #define OVERRIDE |
221 #define FINAL | 214 #define FINAL |
222 #endif | 215 #endif |
223 | 216 |
224 /* WTF_DELETED_FUNCTION */ | 217 /* WTF_DELETED_FUNCTION */ |
225 | 218 |
226 #if COMPILER_SUPPORTS(CXX_DELETED_FUNCTIONS) | 219 #if COMPILER_SUPPORTS(CXX_DELETED_FUNCTIONS) |
227 #define WTF_DELETED_FUNCTION = delete | 220 #define WTF_DELETED_FUNCTION = delete |
228 #else | 221 #else |
(...skipping 26 matching lines...) Expand all Loading... |
255 #define WTF_COMPILER_SUPPORTS_PRETTY_FUNCTION 1 | 248 #define WTF_COMPILER_SUPPORTS_PRETTY_FUNCTION 1 |
256 #define WTF_PRETTY_FUNCTION __PRETTY_FUNCTION__ | 249 #define WTF_PRETTY_FUNCTION __PRETTY_FUNCTION__ |
257 #elif COMPILER(MSVC) | 250 #elif COMPILER(MSVC) |
258 #define WTF_COMPILER_SUPPORTS_PRETTY_FUNCTION 1 | 251 #define WTF_COMPILER_SUPPORTS_PRETTY_FUNCTION 1 |
259 #define WTF_PRETTY_FUNCTION __FUNCDNAME__ | 252 #define WTF_PRETTY_FUNCTION __FUNCDNAME__ |
260 #else | 253 #else |
261 #define WTF_PRETTY_FUNCTION __FUNCTION__ | 254 #define WTF_PRETTY_FUNCTION __FUNCTION__ |
262 #endif | 255 #endif |
263 | 256 |
264 #endif /* WTF_Compiler_h */ | 257 #endif /* WTF_Compiler_h */ |
OLD | NEW |