YARP
Yet Another Robot Platform
compiler.h
Go to the documentation of this file.
1
2
// This is a generated file. Do not edit!
3
4
#ifndef YARP_COMPILER_DETECTION_H
5
#define YARP_COMPILER_DETECTION_H
6
7
// BEGIN compiler.dox.in
8
9
/*
10
* Copyright (C) 2006-2020 Istituto Italiano di Tecnologia (IIT)
11
* All rights reserved.
12
*
13
* This software may be modified and distributed under the terms of the
14
* BSD-3-Clause license. See the accompanying LICENSE file for details.
15
*/
16
17
// This file is generated by the WriteCompilerDetectionHeader CMake module,
18
// including consent from the following files:
19
// * compiler.dox.in
20
// * compiler.prolog.in
21
// * <content generated by write_compiler_detection_header>
22
// * compiler.epilog.swig.in
23
// * compiler.epilog.doxygen.in
24
// * compiler.epilog.in
25
902
// END compiler.dox.in
903
904
// BEGIN compiler.prolog.in
905
906
// In order to allow swig and doxygen pre-processors to parse the macros defined
907
// in this file properly, it is necessary to bypass the content generated by
908
// write_compiler_detection_header
909
#if !defined(SWIG) && !defined(DOXYGEN)
910
911
# ifdef __cplusplus
912
# define YARP_COMPILER_IS_Doxygen 0
913
# define YARP_COMPILER_IS_Swig 0
914
# endif // __cplusplus
915
916
// END compiler.prolog.in
917
918
// BEGIN <content generated by write_compiler_detection_header>
919
920
#ifdef __cplusplus
921
# define YARP_COMPILER_IS_Comeau 0
922
# define YARP_COMPILER_IS_Intel 0
923
# define YARP_COMPILER_IS_PathScale 0
924
# define YARP_COMPILER_IS_Embarcadero 0
925
# define YARP_COMPILER_IS_Borland 0
926
# define YARP_COMPILER_IS_Watcom 0
927
# define YARP_COMPILER_IS_OpenWatcom 0
928
# define YARP_COMPILER_IS_SunPro 0
929
# define YARP_COMPILER_IS_HP 0
930
# define YARP_COMPILER_IS_Compaq 0
931
# define YARP_COMPILER_IS_zOS 0
932
# define YARP_COMPILER_IS_XLClang 0
933
# define YARP_COMPILER_IS_XL 0
934
# define YARP_COMPILER_IS_VisualAge 0
935
# define YARP_COMPILER_IS_PGI 0
936
# define YARP_COMPILER_IS_Cray 0
937
# define YARP_COMPILER_IS_TI 0
938
# define YARP_COMPILER_IS_Fujitsu 0
939
# define YARP_COMPILER_IS_GHS 0
940
# define YARP_COMPILER_IS_SCO 0
941
# define YARP_COMPILER_IS_ARMCC 0
942
# define YARP_COMPILER_IS_AppleClang 0
943
# define YARP_COMPILER_IS_ARMClang 0
944
# define YARP_COMPILER_IS_IntelDPCPP 0
945
# define YARP_COMPILER_IS_IntelClang 0
946
# define YARP_COMPILER_IS_Clang 0
947
# define YARP_COMPILER_IS_GNU 0
948
# define YARP_COMPILER_IS_MSVC 0
949
# define YARP_COMPILER_IS_ADSP 0
950
# define YARP_COMPILER_IS_IAR 0
951
# define YARP_COMPILER_IS_MIPSpro 0
952
953
#if defined(__COMO__)
954
# undef YARP_COMPILER_IS_Comeau
955
# define YARP_COMPILER_IS_Comeau 1
956
957
#elif defined(__INTEL_COMPILER) || defined(__ICC)
958
# undef YARP_COMPILER_IS_Intel
959
# define YARP_COMPILER_IS_Intel 1
960
961
#elif defined(__PATHCC__)
962
# undef YARP_COMPILER_IS_PathScale
963
# define YARP_COMPILER_IS_PathScale 1
964
965
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
966
# undef YARP_COMPILER_IS_Embarcadero
967
# define YARP_COMPILER_IS_Embarcadero 1
968
969
#elif defined(__BORLANDC__)
970
# undef YARP_COMPILER_IS_Borland
971
# define YARP_COMPILER_IS_Borland 1
972
973
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
974
# undef YARP_COMPILER_IS_Watcom
975
# define YARP_COMPILER_IS_Watcom 1
976
977
#elif defined(__WATCOMC__)
978
# undef YARP_COMPILER_IS_OpenWatcom
979
# define YARP_COMPILER_IS_OpenWatcom 1
980
981
#elif defined(__SUNPRO_CC)
982
# undef YARP_COMPILER_IS_SunPro
983
# define YARP_COMPILER_IS_SunPro 1
984
985
#elif defined(__HP_aCC)
986
# undef YARP_COMPILER_IS_HP
987
# define YARP_COMPILER_IS_HP 1
988
989
#elif defined(__DECCXX)
990
# undef YARP_COMPILER_IS_Compaq
991
# define YARP_COMPILER_IS_Compaq 1
992
993
#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
994
# undef YARP_COMPILER_IS_zOS
995
# define YARP_COMPILER_IS_zOS 1
996
997
#elif defined(__ibmxl__) && defined(__clang__)
998
# undef YARP_COMPILER_IS_XLClang
999
# define YARP_COMPILER_IS_XLClang 1
1000
1001
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
1002
# undef YARP_COMPILER_IS_XL
1003
# define YARP_COMPILER_IS_XL 1
1004
1005
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
1006
# undef YARP_COMPILER_IS_VisualAge
1007
# define YARP_COMPILER_IS_VisualAge 1
1008
1009
#elif defined(__PGI)
1010
# undef YARP_COMPILER_IS_PGI
1011
# define YARP_COMPILER_IS_PGI 1
1012
1013
#elif defined(_CRAYC)
1014
# undef YARP_COMPILER_IS_Cray
1015
# define YARP_COMPILER_IS_Cray 1
1016
1017
#elif defined(__TI_COMPILER_VERSION__)
1018
# undef YARP_COMPILER_IS_TI
1019
# define YARP_COMPILER_IS_TI 1
1020
1021
#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
1022
# undef YARP_COMPILER_IS_Fujitsu
1023
# define YARP_COMPILER_IS_Fujitsu 1
1024
1025
#elif defined(__ghs__)
1026
# undef YARP_COMPILER_IS_GHS
1027
# define YARP_COMPILER_IS_GHS 1
1028
1029
#elif defined(__SCO_VERSION__)
1030
# undef YARP_COMPILER_IS_SCO
1031
# define YARP_COMPILER_IS_SCO 1
1032
1033
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
1034
# undef YARP_COMPILER_IS_ARMCC
1035
# define YARP_COMPILER_IS_ARMCC 1
1036
1037
#elif defined(__clang__) && defined(__apple_build_version__)
1038
# undef YARP_COMPILER_IS_AppleClang
1039
# define YARP_COMPILER_IS_AppleClang 1
1040
1041
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
1042
# undef YARP_COMPILER_IS_ARMClang
1043
# define YARP_COMPILER_IS_ARMClang 1
1044
1045
#elif defined(__clang__) && defined(__INTEL_DPCPP_COMPILER__)
1046
# undef YARP_COMPILER_IS_IntelDPCPP
1047
# define YARP_COMPILER_IS_IntelDPCPP 1
1048
1049
#elif defined(__clang__) && defined(__INTEL_CLANG_COMPILER)
1050
# undef YARP_COMPILER_IS_IntelClang
1051
# define YARP_COMPILER_IS_IntelClang 1
1052
1053
#elif defined(__clang__)
1054
# undef YARP_COMPILER_IS_Clang
1055
# define YARP_COMPILER_IS_Clang 1
1056
1057
#elif defined(__GNUC__) || defined(__GNUG__)
1058
# undef YARP_COMPILER_IS_GNU
1059
# define YARP_COMPILER_IS_GNU 1
1060
1061
#elif defined(_MSC_VER)
1062
# undef YARP_COMPILER_IS_MSVC
1063
# define YARP_COMPILER_IS_MSVC 1
1064
1065
#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
1066
# undef YARP_COMPILER_IS_ADSP
1067
# define YARP_COMPILER_IS_ADSP 1
1068
1069
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
1070
# undef YARP_COMPILER_IS_IAR
1071
# define YARP_COMPILER_IS_IAR 1
1072
1073
1074
#endif
1075
1076
# if YARP_COMPILER_IS_GNU
1077
1078
# if !((__GNUC__ * 100 + __GNUC_MINOR__) >= 404)
1079
# error Unsupported compiler version
1080
# endif
1081
1082
# if defined(__GNUC__)
1083
# define YARP_COMPILER_VERSION_MAJOR (__GNUC__)
1084
# else
1085
# define YARP_COMPILER_VERSION_MAJOR (__GNUG__)
1086
# endif
1087
# if defined(__GNUC_MINOR__)
1088
# define YARP_COMPILER_VERSION_MINOR (__GNUC_MINOR__)
1089
# endif
1090
# if defined(__GNUC_PATCHLEVEL__)
1091
# define YARP_COMPILER_VERSION_PATCH (__GNUC_PATCHLEVEL__)
1092
# endif
1093
1094
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus
1095
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
1096
# else
1097
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 0
1098
# endif
1099
1100
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1101
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
1102
# else
1103
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 0
1104
# endif
1105
1106
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
1107
# define YARP_COMPILER_CXX_ALIGNAS 1
1108
# else
1109
# define YARP_COMPILER_CXX_ALIGNAS 0
1110
# endif
1111
1112
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
1113
# define YARP_COMPILER_CXX_ALIGNOF 1
1114
# else
1115
# define YARP_COMPILER_CXX_ALIGNOF 0
1116
# endif
1117
1118
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
1119
# define YARP_COMPILER_CXX_ATTRIBUTES 1
1120
# else
1121
# define YARP_COMPILER_CXX_ATTRIBUTES 0
1122
# endif
1123
1124
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1125
# define YARP_COMPILER_CXX_AUTO_TYPE 1
1126
# else
1127
# define YARP_COMPILER_CXX_AUTO_TYPE 0
1128
# endif
1129
1130
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1131
# define YARP_COMPILER_CXX_CONSTEXPR 1
1132
# else
1133
# define YARP_COMPILER_CXX_CONSTEXPR 0
1134
# endif
1135
1136
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1137
# define YARP_COMPILER_CXX_DECLTYPE 1
1138
# else
1139
# define YARP_COMPILER_CXX_DECLTYPE 0
1140
# endif
1141
1142
# if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
1143
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
1144
# else
1145
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 0
1146
# endif
1147
1148
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1149
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
1150
# else
1151
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 0
1152
# endif
1153
1154
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1155
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
1156
# else
1157
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 0
1158
# endif
1159
1160
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1161
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
1162
# else
1163
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 0
1164
# endif
1165
1166
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1167
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
1168
# else
1169
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 0
1170
# endif
1171
1172
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1173
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
1174
# else
1175
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 0
1176
# endif
1177
1178
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1179
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
1180
# else
1181
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 0
1182
# endif
1183
1184
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1185
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
1186
# else
1187
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 0
1188
# endif
1189
1190
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1191
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
1192
# else
1193
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 0
1194
# endif
1195
1196
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1197
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
1198
# else
1199
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 0
1200
# endif
1201
1202
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1203
# define YARP_COMPILER_CXX_FINAL 1
1204
# else
1205
# define YARP_COMPILER_CXX_FINAL 0
1206
# endif
1207
1208
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1209
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
1210
# else
1211
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 0
1212
# endif
1213
1214
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1215
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
1216
# else
1217
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 0
1218
# endif
1219
1220
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
1221
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
1222
# else
1223
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 0
1224
# endif
1225
1226
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1227
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
1228
# else
1229
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 0
1230
# endif
1231
1232
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1233
# define YARP_COMPILER_CXX_LAMBDAS 1
1234
# else
1235
# define YARP_COMPILER_CXX_LAMBDAS 0
1236
# endif
1237
1238
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1239
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
1240
# else
1241
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 0
1242
# endif
1243
1244
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1245
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
1246
# else
1247
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 0
1248
# endif
1249
1250
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1251
# define YARP_COMPILER_CXX_NOEXCEPT 1
1252
# else
1253
# define YARP_COMPILER_CXX_NOEXCEPT 0
1254
# endif
1255
1256
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1257
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
1258
# else
1259
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 0
1260
# endif
1261
1262
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1263
# define YARP_COMPILER_CXX_NULLPTR 1
1264
# else
1265
# define YARP_COMPILER_CXX_NULLPTR 0
1266
# endif
1267
1268
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1269
# define YARP_COMPILER_CXX_OVERRIDE 1
1270
# else
1271
# define YARP_COMPILER_CXX_OVERRIDE 0
1272
# endif
1273
1274
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1275
# define YARP_COMPILER_CXX_RANGE_FOR 1
1276
# else
1277
# define YARP_COMPILER_CXX_RANGE_FOR 0
1278
# endif
1279
1280
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1281
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
1282
# else
1283
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 0
1284
# endif
1285
1286
# if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
1287
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
1288
# else
1289
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 0
1290
# endif
1291
1292
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1293
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
1294
# else
1295
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 0
1296
# endif
1297
1298
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1299
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
1300
# else
1301
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 0
1302
# endif
1303
1304
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1305
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
1306
# else
1307
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 0
1308
# endif
1309
1310
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1311
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
1312
# else
1313
# define YARP_COMPILER_CXX_STATIC_ASSERT 0
1314
# endif
1315
1316
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1317
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
1318
# else
1319
# define YARP_COMPILER_CXX_STRONG_ENUMS 0
1320
# endif
1321
1322
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
1323
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
1324
# else
1325
# define YARP_COMPILER_CXX_THREAD_LOCAL 0
1326
# endif
1327
1328
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1329
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
1330
# else
1331
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 0
1332
# endif
1333
1334
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1335
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
1336
# else
1337
# define YARP_COMPILER_CXX_UNICODE_LITERALS 0
1338
# endif
1339
1340
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1341
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
1342
# else
1343
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 0
1344
# endif
1345
1346
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1347
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
1348
# else
1349
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 0
1350
# endif
1351
1352
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
1353
# define YARP_COMPILER_CXX_USER_LITERALS 1
1354
# else
1355
# define YARP_COMPILER_CXX_USER_LITERALS 0
1356
# endif
1357
1358
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1359
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
1360
# else
1361
# define YARP_COMPILER_CXX_VARIADIC_MACROS 0
1362
# endif
1363
1364
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
1365
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
1366
# else
1367
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 0
1368
# endif
1369
1370
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
1371
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1
1372
# else
1373
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 0
1374
# endif
1375
1376
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1377
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
1378
# else
1379
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
1380
# endif
1381
1382
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1383
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
1384
# else
1385
# define YARP_COMPILER_CXX_BINARY_LITERALS 0
1386
# endif
1387
1388
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1389
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
1390
# else
1391
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 0
1392
# endif
1393
1394
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1395
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
1396
# else
1397
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 0
1398
# endif
1399
1400
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1401
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
1402
# else
1403
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 0
1404
# endif
1405
1406
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1407
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
1408
# else
1409
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 0
1410
# endif
1411
1412
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1413
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
1414
# else
1415
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 0
1416
# endif
1417
1418
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
1419
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1
1420
# else
1421
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 0
1422
# endif
1423
1424
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
1425
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
1426
# else
1427
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 0
1428
# endif
1429
1430
# if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
1431
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1
1432
# else
1433
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 0
1434
# endif
1435
1436
# elif YARP_COMPILER_IS_Clang
1437
1438
# if !(((__clang_major__ * 100) + __clang_minor__) >= 301)
1439
# error Unsupported compiler version
1440
# endif
1441
1442
# define YARP_COMPILER_VERSION_MAJOR (__clang_major__)
1443
# define YARP_COMPILER_VERSION_MINOR (__clang_minor__)
1444
# define YARP_COMPILER_VERSION_PATCH (__clang_patchlevel__)
1445
# if defined(_MSC_VER)
1446
/* _MSC_VER = VVRR */
1447
# define YARP_SIMULATE_VERSION_MAJOR (_MSC_VER / 100)
1448
# define YARP_SIMULATE_VERSION_MINOR (_MSC_VER % 100)
1449
# endif
1450
1451
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 199711L
1452
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
1453
# else
1454
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 0
1455
# endif
1456
1457
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alias_templates)
1458
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
1459
# else
1460
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 0
1461
# endif
1462
1463
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alignas)
1464
# define YARP_COMPILER_CXX_ALIGNAS 1
1465
# else
1466
# define YARP_COMPILER_CXX_ALIGNAS 0
1467
# endif
1468
1469
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alignas)
1470
# define YARP_COMPILER_CXX_ALIGNOF 1
1471
# else
1472
# define YARP_COMPILER_CXX_ALIGNOF 0
1473
# endif
1474
1475
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_attributes)
1476
# define YARP_COMPILER_CXX_ATTRIBUTES 1
1477
# else
1478
# define YARP_COMPILER_CXX_ATTRIBUTES 0
1479
# endif
1480
1481
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_auto_type)
1482
# define YARP_COMPILER_CXX_AUTO_TYPE 1
1483
# else
1484
# define YARP_COMPILER_CXX_AUTO_TYPE 0
1485
# endif
1486
1487
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_constexpr)
1488
# define YARP_COMPILER_CXX_CONSTEXPR 1
1489
# else
1490
# define YARP_COMPILER_CXX_CONSTEXPR 0
1491
# endif
1492
1493
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_decltype)
1494
# define YARP_COMPILER_CXX_DECLTYPE 1
1495
# else
1496
# define YARP_COMPILER_CXX_DECLTYPE 0
1497
# endif
1498
1499
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_decltype_incomplete_return_types)
1500
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
1501
# else
1502
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 0
1503
# endif
1504
1505
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_default_function_template_args)
1506
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
1507
# else
1508
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 0
1509
# endif
1510
1511
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_defaulted_functions)
1512
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
1513
# else
1514
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 0
1515
# endif
1516
1517
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_defaulted_functions)
1518
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
1519
# else
1520
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 0
1521
# endif
1522
1523
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_delegating_constructors)
1524
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
1525
# else
1526
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 0
1527
# endif
1528
1529
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_deleted_functions)
1530
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
1531
# else
1532
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 0
1533
# endif
1534
1535
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1536
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
1537
# else
1538
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 0
1539
# endif
1540
1541
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_explicit_conversions)
1542
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
1543
# else
1544
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 0
1545
# endif
1546
1547
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1548
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
1549
# else
1550
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 0
1551
# endif
1552
1553
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1554
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
1555
# else
1556
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 0
1557
# endif
1558
1559
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_override_control)
1560
# define YARP_COMPILER_CXX_FINAL 1
1561
# else
1562
# define YARP_COMPILER_CXX_FINAL 0
1563
# endif
1564
1565
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1566
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
1567
# else
1568
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 0
1569
# endif
1570
1571
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_generalized_initializers)
1572
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
1573
# else
1574
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 0
1575
# endif
1576
1577
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_inheriting_constructors)
1578
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
1579
# else
1580
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 0
1581
# endif
1582
1583
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1584
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
1585
# else
1586
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 0
1587
# endif
1588
1589
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_lambdas)
1590
# define YARP_COMPILER_CXX_LAMBDAS 1
1591
# else
1592
# define YARP_COMPILER_CXX_LAMBDAS 0
1593
# endif
1594
1595
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_local_type_template_args)
1596
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
1597
# else
1598
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 0
1599
# endif
1600
1601
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1602
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
1603
# else
1604
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 0
1605
# endif
1606
1607
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_noexcept)
1608
# define YARP_COMPILER_CXX_NOEXCEPT 1
1609
# else
1610
# define YARP_COMPILER_CXX_NOEXCEPT 0
1611
# endif
1612
1613
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_nonstatic_member_init)
1614
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
1615
# else
1616
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 0
1617
# endif
1618
1619
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_nullptr)
1620
# define YARP_COMPILER_CXX_NULLPTR 1
1621
# else
1622
# define YARP_COMPILER_CXX_NULLPTR 0
1623
# endif
1624
1625
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_override_control)
1626
# define YARP_COMPILER_CXX_OVERRIDE 1
1627
# else
1628
# define YARP_COMPILER_CXX_OVERRIDE 0
1629
# endif
1630
1631
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_range_for)
1632
# define YARP_COMPILER_CXX_RANGE_FOR 1
1633
# else
1634
# define YARP_COMPILER_CXX_RANGE_FOR 0
1635
# endif
1636
1637
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_raw_string_literals)
1638
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
1639
# else
1640
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 0
1641
# endif
1642
1643
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_reference_qualified_functions)
1644
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
1645
# else
1646
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 0
1647
# endif
1648
1649
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1650
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
1651
# else
1652
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 0
1653
# endif
1654
1655
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_rvalue_references)
1656
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
1657
# else
1658
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 0
1659
# endif
1660
1661
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1662
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
1663
# else
1664
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 0
1665
# endif
1666
1667
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_static_assert)
1668
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
1669
# else
1670
# define YARP_COMPILER_CXX_STATIC_ASSERT 0
1671
# endif
1672
1673
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_strong_enums)
1674
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
1675
# else
1676
# define YARP_COMPILER_CXX_STRONG_ENUMS 0
1677
# endif
1678
1679
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_thread_local)
1680
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
1681
# else
1682
# define YARP_COMPILER_CXX_THREAD_LOCAL 0
1683
# endif
1684
1685
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_trailing_return)
1686
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
1687
# else
1688
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 0
1689
# endif
1690
1691
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_unicode_literals)
1692
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
1693
# else
1694
# define YARP_COMPILER_CXX_UNICODE_LITERALS 0
1695
# endif
1696
1697
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_generalized_initializers)
1698
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
1699
# else
1700
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 0
1701
# endif
1702
1703
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_unrestricted_unions)
1704
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
1705
# else
1706
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 0
1707
# endif
1708
1709
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_user_literals)
1710
# define YARP_COMPILER_CXX_USER_LITERALS 1
1711
# else
1712
# define YARP_COMPILER_CXX_USER_LITERALS 0
1713
# endif
1714
1715
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
1716
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
1717
# else
1718
# define YARP_COMPILER_CXX_VARIADIC_MACROS 0
1719
# endif
1720
1721
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_variadic_templates)
1722
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
1723
# else
1724
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 0
1725
# endif
1726
1727
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_aggregate_nsdmi)
1728
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1
1729
# else
1730
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 0
1731
# endif
1732
1733
# if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
1734
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
1735
# else
1736
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
1737
# endif
1738
1739
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_binary_literals)
1740
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
1741
# else
1742
# define YARP_COMPILER_CXX_BINARY_LITERALS 0
1743
# endif
1744
1745
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_contextual_conversions)
1746
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
1747
# else
1748
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 0
1749
# endif
1750
1751
# if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
1752
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
1753
# else
1754
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 0
1755
# endif
1756
1757
# if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
1758
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
1759
# else
1760
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 0
1761
# endif
1762
1763
# if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
1764
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
1765
# else
1766
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 0
1767
# endif
1768
1769
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_init_captures)
1770
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
1771
# else
1772
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 0
1773
# endif
1774
1775
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_relaxed_constexpr)
1776
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1
1777
# else
1778
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 0
1779
# endif
1780
1781
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_return_type_deduction)
1782
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
1783
# else
1784
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 0
1785
# endif
1786
1787
# if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_variable_templates)
1788
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1
1789
# else
1790
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 0
1791
# endif
1792
1793
# elif YARP_COMPILER_IS_AppleClang
1794
1795
# if !(((__clang_major__ * 100) + __clang_minor__) >= 400)
1796
# error Unsupported compiler version
1797
# endif
1798
1799
# define YARP_COMPILER_VERSION_MAJOR (__clang_major__)
1800
# define YARP_COMPILER_VERSION_MINOR (__clang_minor__)
1801
# define YARP_COMPILER_VERSION_PATCH (__clang_patchlevel__)
1802
# if defined(_MSC_VER)
1803
/* _MSC_VER = VVRR */
1804
# define YARP_SIMULATE_VERSION_MAJOR (_MSC_VER / 100)
1805
# define YARP_SIMULATE_VERSION_MINOR (_MSC_VER % 100)
1806
# endif
1807
# define YARP_COMPILER_VERSION_TWEAK (__apple_build_version__)
1808
1809
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 199711L
1810
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
1811
# else
1812
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 0
1813
# endif
1814
1815
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alias_templates)
1816
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
1817
# else
1818
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 0
1819
# endif
1820
1821
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alignas)
1822
# define YARP_COMPILER_CXX_ALIGNAS 1
1823
# else
1824
# define YARP_COMPILER_CXX_ALIGNAS 0
1825
# endif
1826
1827
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alignas)
1828
# define YARP_COMPILER_CXX_ALIGNOF 1
1829
# else
1830
# define YARP_COMPILER_CXX_ALIGNOF 0
1831
# endif
1832
1833
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_attributes)
1834
# define YARP_COMPILER_CXX_ATTRIBUTES 1
1835
# else
1836
# define YARP_COMPILER_CXX_ATTRIBUTES 0
1837
# endif
1838
1839
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_auto_type)
1840
# define YARP_COMPILER_CXX_AUTO_TYPE 1
1841
# else
1842
# define YARP_COMPILER_CXX_AUTO_TYPE 0
1843
# endif
1844
1845
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_constexpr)
1846
# define YARP_COMPILER_CXX_CONSTEXPR 1
1847
# else
1848
# define YARP_COMPILER_CXX_CONSTEXPR 0
1849
# endif
1850
1851
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_decltype)
1852
# define YARP_COMPILER_CXX_DECLTYPE 1
1853
# else
1854
# define YARP_COMPILER_CXX_DECLTYPE 0
1855
# endif
1856
1857
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_decltype_incomplete_return_types)
1858
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
1859
# else
1860
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 0
1861
# endif
1862
1863
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_default_function_template_args)
1864
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
1865
# else
1866
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 0
1867
# endif
1868
1869
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_defaulted_functions)
1870
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
1871
# else
1872
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 0
1873
# endif
1874
1875
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_defaulted_functions)
1876
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
1877
# else
1878
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 0
1879
# endif
1880
1881
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_delegating_constructors)
1882
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
1883
# else
1884
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 0
1885
# endif
1886
1887
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_deleted_functions)
1888
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
1889
# else
1890
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 0
1891
# endif
1892
1893
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1894
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
1895
# else
1896
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 0
1897
# endif
1898
1899
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_explicit_conversions)
1900
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
1901
# else
1902
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 0
1903
# endif
1904
1905
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1906
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
1907
# else
1908
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 0
1909
# endif
1910
1911
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1912
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
1913
# else
1914
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 0
1915
# endif
1916
1917
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_override_control)
1918
# define YARP_COMPILER_CXX_FINAL 1
1919
# else
1920
# define YARP_COMPILER_CXX_FINAL 0
1921
# endif
1922
1923
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1924
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
1925
# else
1926
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 0
1927
# endif
1928
1929
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_generalized_initializers)
1930
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
1931
# else
1932
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 0
1933
# endif
1934
1935
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_inheriting_constructors)
1936
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
1937
# else
1938
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 0
1939
# endif
1940
1941
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1942
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
1943
# else
1944
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 0
1945
# endif
1946
1947
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_lambdas)
1948
# define YARP_COMPILER_CXX_LAMBDAS 1
1949
# else
1950
# define YARP_COMPILER_CXX_LAMBDAS 0
1951
# endif
1952
1953
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_local_type_template_args)
1954
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
1955
# else
1956
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 0
1957
# endif
1958
1959
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
1960
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
1961
# else
1962
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 0
1963
# endif
1964
1965
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_noexcept)
1966
# define YARP_COMPILER_CXX_NOEXCEPT 1
1967
# else
1968
# define YARP_COMPILER_CXX_NOEXCEPT 0
1969
# endif
1970
1971
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_nonstatic_member_init)
1972
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
1973
# else
1974
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 0
1975
# endif
1976
1977
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_nullptr)
1978
# define YARP_COMPILER_CXX_NULLPTR 1
1979
# else
1980
# define YARP_COMPILER_CXX_NULLPTR 0
1981
# endif
1982
1983
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_override_control)
1984
# define YARP_COMPILER_CXX_OVERRIDE 1
1985
# else
1986
# define YARP_COMPILER_CXX_OVERRIDE 0
1987
# endif
1988
1989
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_range_for)
1990
# define YARP_COMPILER_CXX_RANGE_FOR 1
1991
# else
1992
# define YARP_COMPILER_CXX_RANGE_FOR 0
1993
# endif
1994
1995
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_raw_string_literals)
1996
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
1997
# else
1998
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 0
1999
# endif
2000
2001
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_reference_qualified_functions)
2002
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
2003
# else
2004
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 0
2005
# endif
2006
2007
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
2008
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
2009
# else
2010
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 0
2011
# endif
2012
2013
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_rvalue_references)
2014
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
2015
# else
2016
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 0
2017
# endif
2018
2019
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
2020
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
2021
# else
2022
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 0
2023
# endif
2024
2025
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_static_assert)
2026
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
2027
# else
2028
# define YARP_COMPILER_CXX_STATIC_ASSERT 0
2029
# endif
2030
2031
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_strong_enums)
2032
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
2033
# else
2034
# define YARP_COMPILER_CXX_STRONG_ENUMS 0
2035
# endif
2036
2037
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_thread_local)
2038
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
2039
# else
2040
# define YARP_COMPILER_CXX_THREAD_LOCAL 0
2041
# endif
2042
2043
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_trailing_return)
2044
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
2045
# else
2046
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 0
2047
# endif
2048
2049
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_unicode_literals)
2050
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
2051
# else
2052
# define YARP_COMPILER_CXX_UNICODE_LITERALS 0
2053
# endif
2054
2055
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_generalized_initializers)
2056
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
2057
# else
2058
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 0
2059
# endif
2060
2061
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_unrestricted_unions)
2062
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
2063
# else
2064
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 0
2065
# endif
2066
2067
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_user_literals)
2068
# define YARP_COMPILER_CXX_USER_LITERALS 1
2069
# else
2070
# define YARP_COMPILER_CXX_USER_LITERALS 0
2071
# endif
2072
2073
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L
2074
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
2075
# else
2076
# define YARP_COMPILER_CXX_VARIADIC_MACROS 0
2077
# endif
2078
2079
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_variadic_templates)
2080
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
2081
# else
2082
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 0
2083
# endif
2084
2085
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_aggregate_nsdmi)
2086
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1
2087
# else
2088
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 0
2089
# endif
2090
2091
# if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L
2092
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
2093
# else
2094
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
2095
# endif
2096
2097
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_binary_literals)
2098
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
2099
# else
2100
# define YARP_COMPILER_CXX_BINARY_LITERALS 0
2101
# endif
2102
2103
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_contextual_conversions)
2104
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
2105
# else
2106
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 0
2107
# endif
2108
2109
# if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L
2110
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
2111
# else
2112
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 0
2113
# endif
2114
2115
# if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L
2116
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
2117
# else
2118
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 0
2119
# endif
2120
2121
# if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L
2122
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
2123
# else
2124
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 0
2125
# endif
2126
2127
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_init_captures)
2128
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
2129
# else
2130
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 0
2131
# endif
2132
2133
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_relaxed_constexpr)
2134
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1
2135
# else
2136
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 0
2137
# endif
2138
2139
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_return_type_deduction)
2140
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
2141
# else
2142
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 0
2143
# endif
2144
2145
# if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_variable_templates)
2146
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1
2147
# else
2148
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 0
2149
# endif
2150
2151
# elif YARP_COMPILER_IS_MSVC
2152
2153
# if !(_MSC_VER >= 1600)
2154
# error Unsupported compiler version
2155
# endif
2156
2157
/* _MSC_VER = VVRR */
2158
# define YARP_COMPILER_VERSION_MAJOR (_MSC_VER / 100)
2159
# define YARP_COMPILER_VERSION_MINOR (_MSC_VER % 100)
2160
# if defined(_MSC_FULL_VER)
2161
# if _MSC_VER >= 1400
2162
/* _MSC_FULL_VER = VVRRPPPPP */
2163
# define YARP_COMPILER_VERSION_PATCH (_MSC_FULL_VER % 100000)
2164
# else
2165
/* _MSC_FULL_VER = VVRRPPPP */
2166
# define YARP_COMPILER_VERSION_PATCH (_MSC_FULL_VER % 10000)
2167
# endif
2168
# endif
2169
# if defined(_MSC_BUILD)
2170
# define YARP_COMPILER_VERSION_TWEAK (_MSC_BUILD)
2171
# endif
2172
2173
# if _MSC_VER >= 1600
2174
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
2175
# else
2176
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 0
2177
# endif
2178
2179
# if _MSC_VER >= 1800
2180
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
2181
# else
2182
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 0
2183
# endif
2184
2185
# if _MSC_VER >= 1900
2186
# define YARP_COMPILER_CXX_ALIGNAS 1
2187
# else
2188
# define YARP_COMPILER_CXX_ALIGNAS 0
2189
# endif
2190
2191
# if _MSC_VER >= 1900
2192
# define YARP_COMPILER_CXX_ALIGNOF 1
2193
# else
2194
# define YARP_COMPILER_CXX_ALIGNOF 0
2195
# endif
2196
2197
# if _MSC_VER >= 1900
2198
# define YARP_COMPILER_CXX_ATTRIBUTES 1
2199
# else
2200
# define YARP_COMPILER_CXX_ATTRIBUTES 0
2201
# endif
2202
2203
# if _MSC_VER >= 1600
2204
# define YARP_COMPILER_CXX_AUTO_TYPE 1
2205
# else
2206
# define YARP_COMPILER_CXX_AUTO_TYPE 0
2207
# endif
2208
2209
# if _MSC_VER >= 1900
2210
# define YARP_COMPILER_CXX_CONSTEXPR 1
2211
# else
2212
# define YARP_COMPILER_CXX_CONSTEXPR 0
2213
# endif
2214
2215
# if _MSC_VER >= 1600
2216
# define YARP_COMPILER_CXX_DECLTYPE 1
2217
# else
2218
# define YARP_COMPILER_CXX_DECLTYPE 0
2219
# endif
2220
2221
# if _MSC_VER >= 1911
2222
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
2223
# else
2224
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 0
2225
# endif
2226
2227
# if _MSC_VER >= 1800
2228
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
2229
# else
2230
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 0
2231
# endif
2232
2233
# if _MSC_VER >= 1800
2234
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
2235
# else
2236
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 0
2237
# endif
2238
2239
# if _MSC_VER >= 1900
2240
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
2241
# else
2242
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 0
2243
# endif
2244
2245
# if _MSC_VER >= 1800
2246
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
2247
# else
2248
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 0
2249
# endif
2250
2251
# if _MSC_VER >= 1900
2252
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
2253
# else
2254
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 0
2255
# endif
2256
2257
# if _MSC_VER >= 1700
2258
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
2259
# else
2260
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 0
2261
# endif
2262
2263
# if _MSC_VER >= 1800
2264
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
2265
# else
2266
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 0
2267
# endif
2268
2269
# if _MSC_VER >= 1600
2270
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
2271
# else
2272
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 0
2273
# endif
2274
2275
# if _MSC_VER >= 1600
2276
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
2277
# else
2278
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 0
2279
# endif
2280
2281
# if _MSC_VER >= 1700
2282
# define YARP_COMPILER_CXX_FINAL 1
2283
# else
2284
# define YARP_COMPILER_CXX_FINAL 0
2285
# endif
2286
2287
# if _MSC_VER >= 1900
2288
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
2289
# else
2290
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 0
2291
# endif
2292
2293
# if _MSC_FULL_VER >= 180030723
2294
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
2295
# else
2296
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 0
2297
# endif
2298
2299
# if _MSC_VER >= 1900
2300
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
2301
# else
2302
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 0
2303
# endif
2304
2305
# if _MSC_VER >= 1900
2306
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
2307
# else
2308
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 0
2309
# endif
2310
2311
# if _MSC_VER >= 1600
2312
# define YARP_COMPILER_CXX_LAMBDAS 1
2313
# else
2314
# define YARP_COMPILER_CXX_LAMBDAS 0
2315
# endif
2316
2317
# if _MSC_VER >= 1600
2318
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
2319
# else
2320
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 0
2321
# endif
2322
2323
# if _MSC_VER >= 1600
2324
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
2325
# else
2326
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 0
2327
# endif
2328
2329
# if _MSC_VER >= 1900
2330
# define YARP_COMPILER_CXX_NOEXCEPT 1
2331
# else
2332
# define YARP_COMPILER_CXX_NOEXCEPT 0
2333
# endif
2334
2335
# if _MSC_VER >= 1900
2336
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
2337
# else
2338
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 0
2339
# endif
2340
2341
# if _MSC_VER >= 1600
2342
# define YARP_COMPILER_CXX_NULLPTR 1
2343
# else
2344
# define YARP_COMPILER_CXX_NULLPTR 0
2345
# endif
2346
2347
# if _MSC_VER >= 1600
2348
# define YARP_COMPILER_CXX_OVERRIDE 1
2349
# else
2350
# define YARP_COMPILER_CXX_OVERRIDE 0
2351
# endif
2352
2353
# if _MSC_VER >= 1700
2354
# define YARP_COMPILER_CXX_RANGE_FOR 1
2355
# else
2356
# define YARP_COMPILER_CXX_RANGE_FOR 0
2357
# endif
2358
2359
# if _MSC_VER >= 1800
2360
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
2361
# else
2362
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 0
2363
# endif
2364
2365
# if _MSC_VER >= 1900
2366
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
2367
# else
2368
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 0
2369
# endif
2370
2371
# if _MSC_VER >= 1600
2372
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
2373
# else
2374
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 0
2375
# endif
2376
2377
# if _MSC_VER >= 1600
2378
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
2379
# else
2380
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 0
2381
# endif
2382
2383
# if _MSC_VER >= 1900
2384
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
2385
# else
2386
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 0
2387
# endif
2388
2389
# if _MSC_VER >= 1600
2390
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
2391
# else
2392
# define YARP_COMPILER_CXX_STATIC_ASSERT 0
2393
# endif
2394
2395
# if _MSC_VER >= 1700
2396
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
2397
# else
2398
# define YARP_COMPILER_CXX_STRONG_ENUMS 0
2399
# endif
2400
2401
# if _MSC_VER >= 1900
2402
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
2403
# else
2404
# define YARP_COMPILER_CXX_THREAD_LOCAL 0
2405
# endif
2406
2407
# if _MSC_VER >= 1600
2408
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
2409
# else
2410
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 0
2411
# endif
2412
2413
# if _MSC_VER >= 1900
2414
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
2415
# else
2416
# define YARP_COMPILER_CXX_UNICODE_LITERALS 0
2417
# endif
2418
2419
# if _MSC_VER >= 1800
2420
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
2421
# else
2422
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 0
2423
# endif
2424
2425
# if _MSC_VER >= 1900
2426
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
2427
# else
2428
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 0
2429
# endif
2430
2431
# if _MSC_VER >= 1900
2432
# define YARP_COMPILER_CXX_USER_LITERALS 1
2433
# else
2434
# define YARP_COMPILER_CXX_USER_LITERALS 0
2435
# endif
2436
2437
# if _MSC_VER >= 1600
2438
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
2439
# else
2440
# define YARP_COMPILER_CXX_VARIADIC_MACROS 0
2441
# endif
2442
2443
# if _MSC_VER >= 1800
2444
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
2445
# else
2446
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 0
2447
# endif
2448
2449
# if _MSC_FULL_VER >= 190024406
2450
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1
2451
# else
2452
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 0
2453
# endif
2454
2455
# if _MSC_VER >= 1900
2456
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
2457
# else
2458
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
2459
# endif
2460
2461
# if _MSC_VER >= 1900
2462
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
2463
# else
2464
# define YARP_COMPILER_CXX_BINARY_LITERALS 0
2465
# endif
2466
2467
# if _MSC_VER >= 1800
2468
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
2469
# else
2470
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 0
2471
# endif
2472
2473
# if _MSC_VER >= 1900
2474
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
2475
# else
2476
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 0
2477
# endif
2478
2479
# if _MSC_VER >= 1900
2480
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
2481
# else
2482
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 0
2483
# endif
2484
2485
# if _MSC_VER >= 1900
2486
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
2487
# else
2488
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 0
2489
# endif
2490
2491
# if _MSC_VER >= 1900
2492
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
2493
# else
2494
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 0
2495
# endif
2496
2497
# if _MSC_VER >= 1911
2498
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1
2499
# else
2500
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 0
2501
# endif
2502
2503
# if _MSC_VER >= 1900
2504
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
2505
# else
2506
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 0
2507
# endif
2508
2509
# if _MSC_FULL_VER >= 190023918
2510
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1
2511
# else
2512
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 0
2513
# endif
2514
2515
# else
2516
# error Unsupported compiler
2517
# endif
2518
2519
# if defined(YARP_COMPILER_CXX_ALIGNAS) && YARP_COMPILER_CXX_ALIGNAS
2520
# define YARP_ALIGNAS(X) alignas(X)
2521
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2522
# define YARP_ALIGNAS(X) __attribute__ ((__aligned__(X)))
2523
# elif YARP_COMPILER_IS_MSVC
2524
# define YARP_ALIGNAS(X) __declspec(align(X))
2525
# else
2526
# define YARP_ALIGNAS(X)
2527
# endif
2528
2529
2530
# if defined(YARP_COMPILER_CXX_ALIGNOF) && YARP_COMPILER_CXX_ALIGNOF
2531
# define YARP_ALIGNOF(X) alignof(X)
2532
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2533
# define YARP_ALIGNOF(X) __alignof__(X)
2534
# elif YARP_COMPILER_IS_MSVC
2535
# define YARP_ALIGNOF(X) __alignof(X)
2536
# endif
2537
2538
2539
# if defined(YARP_COMPILER_CXX_CONSTEXPR) && YARP_COMPILER_CXX_CONSTEXPR
2540
# define YARP_CONSTEXPR constexpr
2541
# else
2542
# define YARP_CONSTEXPR
2543
# endif
2544
2545
2546
# if defined(YARP_COMPILER_CXX_DELETED_FUNCTIONS) && YARP_COMPILER_CXX_DELETED_FUNCTIONS
2547
# define YARP_DELETED_FUNCTION = delete
2548
# else
2549
# define YARP_DELETED_FUNCTION
2550
# endif
2551
2552
2553
# if defined(YARP_COMPILER_CXX_EXTERN_TEMPLATES) && YARP_COMPILER_CXX_EXTERN_TEMPLATES
2554
# define YARP_EXTERN_TEMPLATE extern
2555
# else
2556
# define YARP_EXTERN_TEMPLATE
2557
# endif
2558
2559
2560
# if defined(YARP_COMPILER_CXX_FINAL) && YARP_COMPILER_CXX_FINAL
2561
# define YARP_FINAL final
2562
# else
2563
# define YARP_FINAL
2564
# endif
2565
2566
2567
# if defined(YARP_COMPILER_CXX_NOEXCEPT) && YARP_COMPILER_CXX_NOEXCEPT
2568
# define YARP_NOEXCEPT noexcept
2569
# define YARP_NOEXCEPT_EXPR(X) noexcept(X)
2570
# else
2571
# define YARP_NOEXCEPT
2572
# define YARP_NOEXCEPT_EXPR(X)
2573
# endif
2574
2575
2576
# if defined(YARP_COMPILER_CXX_NULLPTR) && YARP_COMPILER_CXX_NULLPTR
2577
# define YARP_NULLPTR nullptr
2578
# elif YARP_COMPILER_IS_GNU
2579
# define YARP_NULLPTR __null
2580
# else
2581
# define YARP_NULLPTR 0
2582
# endif
2583
2584
2585
# if defined(YARP_COMPILER_CXX_OVERRIDE) && YARP_COMPILER_CXX_OVERRIDE
2586
# define YARP_OVERRIDE override
2587
# else
2588
# define YARP_OVERRIDE
2589
# endif
2590
2591
# if defined(YARP_COMPILER_CXX_STATIC_ASSERT) && YARP_COMPILER_CXX_STATIC_ASSERT
2592
# define YARP_STATIC_ASSERT(X) static_assert(X, #X)
2593
# define YARP_STATIC_ASSERT_MSG(X, MSG) static_assert(X, MSG)
2594
# else
2595
# define YARP_STATIC_ASSERT_JOIN(X, Y) YARP_STATIC_ASSERT_JOIN_IMPL(X, Y)
2596
# define YARP_STATIC_ASSERT_JOIN_IMPL(X, Y) X##Y
2597
template
<
bool
>
struct
YARPStaticAssert;
2598
template
<>
struct
YARPStaticAssert<true>{};
2599
# define YARP_STATIC_ASSERT(X) enum { YARP_STATIC_ASSERT_JOIN(YARPStaticAssertEnum, __LINE__) = sizeof(YARPStaticAssert<X>) }
2600
# define YARP_STATIC_ASSERT_MSG(X, MSG) enum { YARP_STATIC_ASSERT_JOIN(YARPStaticAssertEnum, __LINE__) = sizeof(YARPStaticAssert<X>) }
2601
# endif
2602
2603
2604
# if defined(YARP_COMPILER_CXX_THREAD_LOCAL) && YARP_COMPILER_CXX_THREAD_LOCAL
2605
# define YARP_THREAD_LOCAL thread_local
2606
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2607
# define YARP_THREAD_LOCAL __thread
2608
# elif YARP_COMPILER_IS_MSVC
2609
# define YARP_THREAD_LOCAL __declspec(thread)
2610
# else
2611
// YARP_THREAD_LOCAL not defined for this configuration.
2612
# endif
2613
2614
2615
# ifndef YARP_DEPRECATED
2616
# if defined(YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED) && YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED
2617
# define YARP_DEPRECATED [[deprecated]]
2618
# define YARP_DEPRECATED_MSG(MSG) [[deprecated(MSG)]]
2619
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang
2620
# define YARP_DEPRECATED __attribute__((__deprecated__))
2621
# define YARP_DEPRECATED_MSG(MSG) __attribute__((__deprecated__(MSG)))
2622
# elif YARP_COMPILER_IS_MSVC
2623
# define YARP_DEPRECATED __declspec(deprecated)
2624
# define YARP_DEPRECATED_MSG(MSG) __declspec(deprecated(MSG))
2625
# else
2626
# define YARP_DEPRECATED
2627
# define YARP_DEPRECATED_MSG(MSG)
2628
# endif
2629
# endif
2630
2631
#endif
2632
2633
// END <content generated by write_compiler_detection_header>
2634
2635
// BEGIN compiler.epilog.swig.in
2636
2637
#elif defined(SWIG)
2638
2639
# ifdef __cplusplus
2640
# define YARP_COMPILER_IS_Comeau 0
2641
# define YARP_COMPILER_IS_Intel 0
2642
# define YARP_COMPILER_IS_PathScale 0
2643
# define YARP_COMPILER_IS_Embarcadero 0
2644
# define YARP_COMPILER_IS_Borland 0
2645
# define YARP_COMPILER_IS_Watcom 0
2646
# define YARP_COMPILER_IS_OpenWatcom 0
2647
# define YARP_COMPILER_IS_SunPro 0
2648
# define YARP_COMPILER_IS_HP 0
2649
# define YARP_COMPILER_IS_Compaq 0
2650
# define YARP_COMPILER_IS_zOS 0
2651
# define YARP_COMPILER_IS_XL 0
2652
# define YARP_COMPILER_IS_VisualAge 0
2653
# define YARP_COMPILER_IS_PGI 0
2654
# define YARP_COMPILER_IS_Cray 0
2655
# define YARP_COMPILER_IS_TI 0
2656
# define YARP_COMPILER_IS_Fujitsu 0
2657
# define YARP_COMPILER_IS_SCO 0
2658
# define YARP_COMPILER_IS_AppleClang 0
2659
# define YARP_COMPILER_IS_Clang 0
2660
# define YARP_COMPILER_IS_GNU 0
2661
# define YARP_COMPILER_IS_MSVC 0
2662
# define YARP_COMPILER_IS_ADSP 0
2663
# define YARP_COMPILER_IS_IAR 0
2664
# define YARP_COMPILER_IS_ARMCC 0
2665
# define YARP_COMPILER_IS_MIPSpro 0
2666
# define YARP_COMPILER_IS_Doxygen 0
2667
# define YARP_COMPILER_IS_Swig 1
2668
2669
# if !(SWIG_VERSION >= 0x030000)
2670
# error Unsupported compiler version
2671
# endif
2672
2673
// Swig defines the VERSION in a very peculiar way.
2674
// See also http://www.swig.org/Doc3.0/Preprocessor.html
2675
# define YARP_COMPILER_VERSION_MAJOR ((((SWIG_VERSION & 0xF00000) >> 20) * 10) + ((SWIG_VERSION & 0x0F0000) >> 16))
2676
# define YARP_COMPILER_VERSION_MINOR ((((SWIG_VERSION & 0x00F000) >> 12) * 10) + ((SWIG_VERSION & 0x000F00) >> 8))
2677
# define YARP_COMPILER_VERSION_PATCH ((((SWIG_VERSION & 0x0000F0) >> 4) * 10) + (SWIG_VERSION & 0x00000F))
2678
2679
// Swig 3 should support most C++ features, with the exception of attributes.
2680
// See also http://www.swig.org/Doc3.0/CPlusPlus11.html
2681
// Note: This list was not fully tested.
2682
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 0
2683
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
2684
# define YARP_COMPILER_CXX_ALIGNAS 1
2685
# define YARP_COMPILER_CXX_ALIGNOF 1
2686
# define YARP_COMPILER_CXX_ATTRIBUTES 0
2687
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
2688
# define YARP_COMPILER_CXX_AUTO_TYPE 1
2689
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
2690
# define YARP_COMPILER_CXX_CONSTEXPR 1
2691
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
2692
# define YARP_COMPILER_CXX_DECLTYPE 1
2693
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
2694
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
2695
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
2696
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
2697
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
2698
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
2699
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
2700
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
2701
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
2702
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
2703
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
2704
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
2705
# define YARP_COMPILER_CXX_FINAL 1
2706
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
2707
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
2708
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
2709
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
2710
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
2711
# define YARP_COMPILER_CXX_LAMBDAS 1
2712
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
2713
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
2714
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
2715
# define YARP_COMPILER_CXX_NOEXCEPT 1
2716
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
2717
# define YARP_COMPILER_CXX_NULLPTR 1
2718
# define YARP_COMPILER_CXX_OVERRIDE 1
2719
# define YARP_COMPILER_CXX_RANGE_FOR 1
2720
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
2721
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
2722
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 0
2723
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
2724
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
2725
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
2726
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
2727
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
2728
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
2729
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
2730
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
2731
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
2732
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
2733
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
2734
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
2735
# define YARP_COMPILER_CXX_USER_LITERALS 1
2736
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 0
2737
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
2738
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
2739
2740
# endif // __cplusplus
2741
2742
// END compiler.epilog.swig.in
2743
2744
// BEGIN compiler.epilog.doxygen.in
2745
2746
#elif defined(DOXYGEN)
2747
2748
# ifdef __cplusplus
2749
# define YARP_COMPILER_IS_Comeau 0
2750
# define YARP_COMPILER_IS_Intel 0
2751
# define YARP_COMPILER_IS_PathScale 0
2752
# define YARP_COMPILER_IS_Embarcadero 0
2753
# define YARP_COMPILER_IS_Borland 0
2754
# define YARP_COMPILER_IS_Watcom 0
2755
# define YARP_COMPILER_IS_OpenWatcom 0
2756
# define YARP_COMPILER_IS_SunPro 0
2757
# define YARP_COMPILER_IS_HP 0
2758
# define YARP_COMPILER_IS_Compaq 0
2759
# define YARP_COMPILER_IS_zOS 0
2760
# define YARP_COMPILER_IS_XL 0
2761
# define YARP_COMPILER_IS_VisualAge 0
2762
# define YARP_COMPILER_IS_PGI 0
2763
# define YARP_COMPILER_IS_Cray 0
2764
# define YARP_COMPILER_IS_TI 0
2765
# define YARP_COMPILER_IS_Fujitsu 0
2766
# define YARP_COMPILER_IS_SCO 0
2767
# define YARP_COMPILER_IS_AppleClang 0
2768
# define YARP_COMPILER_IS_Clang 0
2769
# define YARP_COMPILER_IS_GNU 0
2770
# define YARP_COMPILER_IS_MSVC 0
2771
# define YARP_COMPILER_IS_ADSP 0
2772
# define YARP_COMPILER_IS_IAR 0
2773
# define YARP_COMPILER_IS_ARMCC 0
2774
# define YARP_COMPILER_IS_MIPSpro 0
2775
# define YARP_COMPILER_IS_Doxygen 1
2776
# define YARP_COMPILER_IS_Swig 0
2777
2778
# define YARP_COMPILER_VERSION_MAJOR DOXYGEN_MAJOR_VERSION
2779
# define YARP_COMPILER_VERSION_MINOR DOXYGEN_MINOR_VERSION
2780
# define YARP_COMPILER_VERSION_PATCH DOXYGEN_PATCH_VERSION
2781
2782
// Doxygen 1.8.12 supports most C++ features.
2783
// Previous versions will probably not support all of them.
2784
// Note: This list was not fully tested.
2785
# define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1
2786
# define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1
2787
# define YARP_COMPILER_CXX_ALIGNAS 1
2788
# define YARP_COMPILER_CXX_ALIGNOF 1
2789
# define YARP_COMPILER_CXX_ATTRIBUTES 1
2790
# define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
2791
# define YARP_COMPILER_CXX_AUTO_TYPE 1
2792
# define YARP_COMPILER_CXX_BINARY_LITERALS 1
2793
# define YARP_COMPILER_CXX_CONSTEXPR 1
2794
# define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1
2795
# define YARP_COMPILER_CXX_DECLTYPE 1
2796
# define YARP_COMPILER_CXX_DECLTYPE_AUTO 1
2797
# define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1
2798
# define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1
2799
# define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1
2800
# define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1
2801
# define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1
2802
# define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1
2803
# define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1
2804
# define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1
2805
# define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1
2806
# define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1
2807
# define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1
2808
# define YARP_COMPILER_CXX_FINAL 1
2809
# define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1
2810
# define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1
2811
# define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1
2812
# define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1
2813
# define YARP_COMPILER_CXX_INLINE_NAMESPACES 1
2814
# define YARP_COMPILER_CXX_LAMBDAS 1
2815
# define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1
2816
# define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1
2817
# define YARP_COMPILER_CXX_LONG_LONG_TYPE 1
2818
# define YARP_COMPILER_CXX_NOEXCEPT 1
2819
# define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1
2820
# define YARP_COMPILER_CXX_NULLPTR 1
2821
# define YARP_COMPILER_CXX_OVERRIDE 1
2822
# define YARP_COMPILER_CXX_RANGE_FOR 1
2823
# define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1
2824
# define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1
2825
# define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1
2826
# define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1
2827
# define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1
2828
# define YARP_COMPILER_CXX_RVALUE_REFERENCES 1
2829
# define YARP_COMPILER_CXX_SIZEOF_MEMBER 1
2830
# define YARP_COMPILER_CXX_STATIC_ASSERT 1
2831
# define YARP_COMPILER_CXX_STRONG_ENUMS 1
2832
# define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1
2833
# define YARP_COMPILER_CXX_THREAD_LOCAL 1
2834
# define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1
2835
# define YARP_COMPILER_CXX_UNICODE_LITERALS 1
2836
# define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1
2837
# define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1
2838
# define YARP_COMPILER_CXX_USER_LITERALS 1
2839
# define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1
2840
# define YARP_COMPILER_CXX_VARIADIC_MACROS 1
2841
# define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1
2842
2843
# endif // __cplusplus
2844
2845
// END compiler.epilog.doxygen.in
2846
2847
// BEGIN compiler.epilog.in
2848
2849
#else
2850
# error Unsupported compiler
2851
#endif
2852
2853
2854
// Due to the "#error Unsupported compiler" in the generated file, it is
2855
// impossible to enter the section where these defines are actually defined,
2856
// therefore this part is copied and pasted here.
2857
#if defined(SWIG) || defined(DOXYGEN)
2858
# ifdef __cplusplus
2859
2860
# if defined(YARP_COMPILER_CXX_ALIGNAS) && YARP_COMPILER_CXX_ALIGNAS
2861
# define YARP_ALIGNAS(X) alignas(X)
2862
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2863
# define YARP_ALIGNAS(X) __attribute__ ((__aligned__(X)))
2864
# elif YARP_COMPILER_IS_MSVC
2865
# define YARP_ALIGNAS(X) __declspec(align(X))
2866
# else
2867
# define YARP_ALIGNAS(X)
2868
# endif
2869
2870
2871
# if defined(YARP_COMPILER_CXX_ALIGNOF) && YARP_COMPILER_CXX_ALIGNOF
2872
# define YARP_ALIGNOF(X) alignof(X)
2873
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2874
# define YARP_ALIGNOF(X) __alignof__(X)
2875
# elif YARP_COMPILER_IS_MSVC
2876
# define YARP_ALIGNOF(X) __alignof(X)
2877
# endif
2878
2879
2880
# ifndef YARP_DEPRECATED
2881
# if defined(YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED) && YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED
2882
# define YARP_DEPRECATED [[deprecated]]
2883
# define YARP_DEPRECATED_MSG(MSG) [[deprecated(MSG)]]
2884
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang
2885
# define YARP_DEPRECATED __attribute__((__deprecated__))
2886
# define YARP_DEPRECATED_MSG(MSG) __attribute__((__deprecated__(MSG)))
2887
# elif YARP_COMPILER_IS_MSVC
2888
# define YARP_DEPRECATED __declspec(deprecated)
2889
# define YARP_DEPRECATED_MSG(MSG) __declspec(deprecated(MSG))
2890
# else
2891
# define YARP_DEPRECATED
2892
# define YARP_DEPRECATED_MSG(MSG)
2893
# endif
2894
# endif
2895
2896
2897
# if defined(YARP_COMPILER_CXX_CONSTEXPR) && YARP_COMPILER_CXX_CONSTEXPR
2898
# define YARP_CONSTEXPR constexpr
2899
# else
2900
# define YARP_CONSTEXPR
2901
# endif
2902
2903
2904
# if defined(YARP_COMPILER_CXX_DELETED_FUNCTIONS) && YARP_COMPILER_CXX_DELETED_FUNCTIONS
2905
# define YARP_DELETED_FUNCTION = delete
2906
# else
2907
# define YARP_DELETED_FUNCTION
2908
# endif
2909
2910
2911
# if defined(YARP_COMPILER_CXX_EXTERN_TEMPLATES) && YARP_COMPILER_CXX_EXTERN_TEMPLATES
2912
# define YARP_EXTERN_TEMPLATE extern
2913
# else
2914
# define YARP_EXTERN_TEMPLATE
2915
# endif
2916
2917
2918
# if defined(YARP_COMPILER_CXX_FINAL) && YARP_COMPILER_CXX_FINAL
2919
# define YARP_FINAL final
2920
# else
2921
# define YARP_FINAL
2922
# endif
2923
2924
2925
# if defined(YARP_COMPILER_CXX_NOEXCEPT) && YARP_COMPILER_CXX_NOEXCEPT
2926
# define YARP_NOEXCEPT noexcept
2927
# define YARP_NOEXCEPT_EXPR(X) noexcept(X)
2928
# else
2929
# define YARP_NOEXCEPT
2930
# define YARP_NOEXCEPT_EXPR(X)
2931
# endif
2932
2933
2934
# if defined(YARP_COMPILER_CXX_NULLPTR) && YARP_COMPILER_CXX_NULLPTR
2935
# define YARP_NULLPTR nullptr
2936
# else
2937
# define YARP_NULLPTR 0
2938
# endif
2939
2940
2941
# if defined(YARP_COMPILER_CXX_OVERRIDE) && YARP_COMPILER_CXX_OVERRIDE
2942
# define YARP_OVERRIDE override
2943
# else
2944
# define YARP_OVERRIDE
2945
# endif
2946
2947
# if defined(YARP_COMPILER_CXX_STATIC_ASSERT) && YARP_COMPILER_CXX_STATIC_ASSERT
2948
# define YARP_STATIC_ASSERT(X) static_assert(X, #X)
2949
# define YARP_STATIC_ASSERT_MSG(X, MSG) static_assert(X, MSG)
2950
# else
2951
# define YARP_STATIC_ASSERT_JOIN(X, Y) YARP_STATIC_ASSERT_JOIN_IMPL(X, Y)
2952
# define YARP_STATIC_ASSERT_JOIN_IMPL(X, Y) X##Y
2953
template
<
bool
>
struct
YARPStaticAssert;
2954
template
<>
struct
YARPStaticAssert<true>{};
2955
# define YARP_STATIC_ASSERT(X) enum { YARP_STATIC_ASSERT_JOIN(YARPStaticAssertEnum, __LINE__) = sizeof(YARPStaticAssert<X>) }
2956
# define YARP_STATIC_ASSERT_MSG(X, MSG) enum { YARP_STATIC_ASSERT_JOIN(YARPStaticAssertEnum, __LINE__) = sizeof(YARPStaticAssert<X>) }
2957
# endif
2958
2959
2960
# if defined(YARP_COMPILER_CXX_THREAD_LOCAL) && YARP_COMPILER_CXX_THREAD_LOCAL
2961
# define YARP_THREAD_LOCAL thread_local
2962
# elif YARP_COMPILER_IS_GNU || YARP_COMPILER_IS_Clang || YARP_COMPILER_IS_AppleClang
2963
# define YARP_THREAD_LOCAL __thread
2964
# elif YARP_COMPILER_IS_MSVC
2965
# define YARP_THREAD_LOCAL __declspec(thread)
2966
# else
2967
// YARP_THREAD_LOCAL not defined for this configuration.
2968
# endif
2969
2970
# endif //__cplusplus
2971
#endif // defined(SWIG) || defined(DOXYGEN)
2972
2973
// END compiler.epilog.in
2974
2975
2976
#endif
YARP
3.4.100+20201223.2+gitb8ea4d712
src
libYARP_conf
src
yarp
conf
compiler.h
Generated on Sun Jan 3 2021 02:46:21 for YARP by
1.8.20