@@ -223,13 +223,17 @@ private static void generateGroupClassHeader(
223
223
indent + " inline void wrapForEncode(char *buffer, const %3$s count," +
224
224
" std::uint64_t *pos, const std::uint64_t actingVersion, const std::uint64_t bufferLength)\n " +
225
225
indent + " {\n " +
226
+ indent + "#if defined(__GNUG__) && !defined(__clang__)\n " +
226
227
indent + "#pragma GCC diagnostic push\n " +
227
228
indent + "#pragma GCC diagnostic ignored \" -Wtype-limits\" \n " +
229
+ indent + "#endif\n " +
228
230
indent + " if (count < %5$d || count > %6$d)\n " +
229
231
indent + " {\n " +
230
232
indent + " throw std::runtime_error(\" count outside of allowed range [E110]\" );\n " +
231
233
indent + " }\n " +
234
+ indent + "#if defined(__GNUG__) && !defined(__clang__)\n " +
232
235
indent + "#pragma GCC diagnostic pop\n " +
236
+ indent + "#endif\n " +
233
237
indent + " m_buffer = buffer;\n " +
234
238
indent + " m_bufferLength = bufferLength;\n " +
235
239
indent + " m_dimensions.wrap(m_buffer, *pos, actingVersion, bufferLength);\n " +
@@ -363,10 +367,14 @@ private static CharSequence generateGroupProperty(
363
367
indent + " }\n \n " +
364
368
indent + " bool %1$sInActingVersion()\n " +
365
369
indent + " {\n " +
370
+ indent + "#if defined(__clang__)\n " +
366
371
indent + "#pragma clang diagnostic push\n " +
367
372
indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
373
+ indent + "#endif\n " +
368
374
indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
375
+ indent + "#if defined(__clang__)\n " +
369
376
indent + "#pragma clang diagnostic pop\n " +
377
+ indent + "#endif\n " +
370
378
indent + " }\n " ,
371
379
propertyName ,
372
380
token .version ()));
@@ -522,10 +530,14 @@ private void generateVarDataDescriptors(
522
530
indent + " }\n \n " +
523
531
indent + " bool %1$sInActingVersion()\n " +
524
532
indent + " {\n " +
533
+ indent + "#if defined(__clang__)\n " +
525
534
indent + "#pragma clang diagnostic push\n " +
526
535
indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
536
+ indent + "#endif\n " +
527
537
indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
538
+ indent + "#if defined(__clang__)\n " +
528
539
indent + "#pragma clang diagnostic pop\n " +
540
+ indent + "#endif\n " +
529
541
indent + " }\n \n " +
530
542
indent + " static SBE_CONSTEXPR std::uint16_t %1$sId()\n " +
531
543
indent + " {\n " +
@@ -1414,10 +1426,14 @@ private CharSequence generateFields(final String containingClassName, final List
1414
1426
indent + " }\n \n " +
1415
1427
indent + " bool %1$sInActingVersion()\n " +
1416
1428
indent + " {\n " +
1429
+ indent + "#if defined(__clang__)\n " +
1417
1430
indent + "#pragma clang diagnostic push\n " +
1418
1431
indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
1432
+ indent + "#endif\n " +
1419
1433
indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
1434
+ indent + "#if defined(__clang__)\n " +
1420
1435
indent + "#pragma clang diagnostic pop\n " +
1436
+ indent + "#endif\n " +
1421
1437
indent + " }\n \n " ,
1422
1438
propertyName ,
1423
1439
signalToken .version ()));
0 commit comments