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