DxLibEx
gcc.hpp
Go to the documentation of this file.
1 /*=============================================================================
2  Copyright (C) 2015-2017 DxLibEx project
3  https://github.com/Nagarei/DxLibEx/
4 
5  Distributed under the Boost Software License, Version 1.0.
6  (See http://www.boost.org/LICENSE_1_0.txt)
7 =============================================================================*/
8 #ifndef DXLE_INC_CONFIG_COMPILER_GCC_HPP_
9 #define DXLE_INC_CONFIG_COMPILER_GCC_HPP_
10 
11 /*
12 C++11
13 */
14 #if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) || (__GNUC__ == 4 && __GNUC_MINOR__ == 8 && __GNUC_PATCHLEVEL__ < 1 )|| !defined(__GXX_EXPERIMENTAL_CXX0X__))
15 # define DXLE_NO_CXX11_REF_QUALIFIERS
16 #endif
17 
18 #if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) || !defined(__GXX_EXPERIMENTAL_CXX0X__))
19 # define DXLE_NO_CXX11_ATTRIBUTES
20 #endif
21 
22 #if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(__GXX_EXPERIMENTAL_CXX0X__))
23 # define DXLE_NO_CXX11_USER_DEFINED_LITERALS
24 #endif
25 
26 #if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(__GXX_EXPERIMENTAL_CXX0X__))
27 # define DXLE_NO_CXX11_CONSTEXPR
28 # define DXLE_NO_CXX11_NOEXCEPT
29 # define DXLE_NO_CXX11_NOEXCEPT_EXPRESSION
30 #endif
31 
32 #if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__))
33 # define DXLE_NO_CXX11_UNICODE_LITERALS
34 #endif
35 
36 /*
37 C++14
38 */
39 #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
40 # define DXLE_NO_CXX14_CONSTEXPR
41 #endif
42 
43 #if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
44 # define DXLE_NO_CXX14_VARIABLE_TEMPLATES
45 #endif
46 
47 #if ((__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 9) || !defined(__GXX_EXPERIMENTAL_CXX0X__))) || __cplusplus < 201300
48 # define DXLE_NO_CXX14_ATTRIBUTE_DEPRECATED
49 #endif
50 
51 #if __GNUC__ < 5 || __cplusplus < 201402
52 # define DXLE_NO_CXX14_UDLS_FOR_STRING_AND_CHRONO
53 #endif
54 
55 /*
56 Proprietary extension
57 */
58 #if ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) && defined(__GXX_EXPERIMENTAL_CXX0X__))
59 # define DXLE_HAS_CONSTEXPR_CMATH_FUNCTION
60 # define DXLE_HAS_CONSTEXPR_COPYSIGN_FUNCTION
61 # define DXLE_HAS_CONSTEXPR_BIT_OPERATION
62 #endif
63 #if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5))
64 # define DXLE_HAS_GNU_DEPRECATED_WITH_MESSAGE_SUPPORT
65 #endif
66 
67 #define DXLE_NO_CXX17_UNUSED
68 
69 #endif // #ifndef DXLE_INC_CONFIG_COMPILER_GCC_HPP_