OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 BASE_COMPILER_SPECIFIC_H_ | 5 #ifndef BASE_COMPILER_SPECIFIC_H_ |
6 #define BASE_COMPILER_SPECIFIC_H_ | 6 #define BASE_COMPILER_SPECIFIC_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "build/build_config.h" | 9 #include "build/build_config.h" |
10 | 10 |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 #else | 77 #else |
78 #define ALLOW_UNUSED | 78 #define ALLOW_UNUSED |
79 #endif | 79 #endif |
80 | 80 |
81 // Annotate a virtual method indicating it must be overriding a virtual | 81 // Annotate a virtual method indicating it must be overriding a virtual |
82 // method in the parent class. | 82 // method in the parent class. |
83 // Use like: | 83 // Use like: |
84 // virtual void foo() OVERRIDE; | 84 // virtual void foo() OVERRIDE; |
85 #if defined(COMPILER_MSVC) | 85 #if defined(COMPILER_MSVC) |
86 #define OVERRIDE override | 86 #define OVERRIDE override |
87 // TODO(thakis): Reenable this, http://crbug.com/71088 | 87 #elif defined(__clang__) |
88 //#elif defined(__clang__) | 88 #define OVERRIDE override |
89 //#define OVERRIDE __attribute__((override)) | |
90 #else | 89 #else |
91 #define OVERRIDE | 90 #define OVERRIDE |
92 #endif | 91 #endif |
93 | 92 |
94 // Annotate a function indicating the caller must examine the return value. | 93 // Annotate a function indicating the caller must examine the return value. |
95 // Use like: | 94 // Use like: |
96 // int foo() WARN_UNUSED_RESULT; | 95 // int foo() WARN_UNUSED_RESULT; |
97 #if defined(COMPILER_GCC) | 96 #if defined(COMPILER_GCC) |
98 #define WARN_UNUSED_RESULT __attribute__((warn_unused_result)) | 97 #define WARN_UNUSED_RESULT __attribute__((warn_unused_result)) |
99 #else | 98 #else |
(...skipping 13 matching lines...) Expand all Loading... |
113 #endif | 112 #endif |
114 | 113 |
115 // WPRINTF_FORMAT is the same, but for wide format strings. | 114 // WPRINTF_FORMAT is the same, but for wide format strings. |
116 // This doesn't appear to yet be implemented in any compiler. | 115 // This doesn't appear to yet be implemented in any compiler. |
117 // See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38308 . | 116 // See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38308 . |
118 #define WPRINTF_FORMAT(format_param, dots_param) | 117 #define WPRINTF_FORMAT(format_param, dots_param) |
119 // If available, it would look like: | 118 // If available, it would look like: |
120 // __attribute__((format(wprintf, format_param, dots_param))) | 119 // __attribute__((format(wprintf, format_param, dots_param))) |
121 | 120 |
122 #endif // BASE_COMPILER_SPECIFIC_H_ | 121 #endif // BASE_COMPILER_SPECIFIC_H_ |
OLD | NEW |