OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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 // Copied from http://crrev.com/6ad76b419eacefc4/testing/gmock_custom/gmock/inte
rnal/custom/gmock-port.h | |
6 | |
7 #ifndef TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ | 5 #ifndef TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ |
8 #define TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ | 6 #define TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ |
9 | 7 |
10 #include <type_traits> | 8 #include <type_traits> |
11 | 9 |
12 namespace std { | 10 namespace std { |
13 | 11 |
14 // Provide alternative implementation of std::is_default_constructible for | 12 // Provide alternative implementation of std::is_default_constructible for |
15 // old, pre-4.7 of libstdc++, where is_default_constructible is missing. | 13 // old, pre-4.7 of libstdc++, where is_default_constructible is missing. |
16 // <20120322 below implies pre-4.7.0. In addition we blacklist several version | 14 // <20120322 below implies pre-4.7.0. In addition we blacklist several version |
17 // that released after 4.7.0 from pre-4.7.0 branch. 20120702 implies 4.5.4, and | 15 // that released after 4.7.0 from pre-4.7.0 branch. 20120702 implies 4.5.4, and |
18 // 20121127 implies 4.6.4. | 16 // 20121127 implies 4.6.4. |
19 #if defined(__GLIBCXX__) && \ | 17 #if defined(__GLIBCXX__) && \ |
20 (__GLIBCXX__ < 20120322 || \ | 18 (__GLIBCXX__ < 20120322 || __GLIBCXX__ == 20120702 || \ |
21 __GLIBCXX__ == 20120702 || \ | 19 __GLIBCXX__ == 20121127) |
22 __GLIBCXX__ == 20121127) | |
23 template <typename T> | 20 template <typename T> |
24 using is_default_constructible = std::is_constructible<T>; | 21 using is_default_constructible = std::is_constructible<T>; |
25 #endif | 22 #endif |
26 | |
27 } | 23 } |
28 | 24 |
29 #endif // TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ | 25 #endif // TESTING_GMOCK_CUSTOM_GMOCK_INTERNAL_CUSTOM_GMOCK_PORT_H_ |
OLD | NEW |