@@ -223,13 +223,17 @@ private static void generateGroupClassHeader(
223223 indent + " inline void wrapForEncode(char *buffer, const %3$s count," +
224224 " std::uint64_t *pos, const std::uint64_t actingVersion, const std::uint64_t bufferLength)\n " +
225225 indent + " {\n " +
226+ indent + "#if defined(__GNUG__) && !defined(__clang__)\n " +
226227 indent + "#pragma GCC diagnostic push\n " +
227228 indent + "#pragma GCC diagnostic ignored \" -Wtype-limits\" \n " +
229+ indent + "#endif\n " +
228230 indent + " if (count < %5$d || count > %6$d)\n " +
229231 indent + " {\n " +
230232 indent + " throw std::runtime_error(\" count outside of allowed range [E110]\" );\n " +
231233 indent + " }\n " +
234+ indent + "#if defined(__GNUG__) && !defined(__clang__)\n " +
232235 indent + "#pragma GCC diagnostic pop\n " +
236+ indent + "#endif\n " +
233237 indent + " m_buffer = buffer;\n " +
234238 indent + " m_bufferLength = bufferLength;\n " +
235239 indent + " m_dimensions.wrap(m_buffer, *pos, actingVersion, bufferLength);\n " +
@@ -363,10 +367,14 @@ private static CharSequence generateGroupProperty(
363367 indent + " }\n \n " +
364368 indent + " bool %1$sInActingVersion()\n " +
365369 indent + " {\n " +
370+ indent + "#if defined(__clang__)\n " +
366371 indent + "#pragma clang diagnostic push\n " +
367372 indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
373+ indent + "#endif\n " +
368374 indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
375+ indent + "#if defined(__clang__)\n " +
369376 indent + "#pragma clang diagnostic pop\n " +
377+ indent + "#endif\n " +
370378 indent + " }\n " ,
371379 propertyName ,
372380 token .version ()));
@@ -522,10 +530,14 @@ private void generateVarDataDescriptors(
522530 indent + " }\n \n " +
523531 indent + " bool %1$sInActingVersion()\n " +
524532 indent + " {\n " +
533+ indent + "#if defined(__clang__)\n " +
525534 indent + "#pragma clang diagnostic push\n " +
526535 indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
536+ indent + "#endif\n " +
527537 indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
538+ indent + "#if defined(__clang__)\n " +
528539 indent + "#pragma clang diagnostic pop\n " +
540+ indent + "#endif\n " +
529541 indent + " }\n \n " +
530542 indent + " static SBE_CONSTEXPR std::uint16_t %1$sId()\n " +
531543 indent + " {\n " +
@@ -1414,10 +1426,14 @@ private CharSequence generateFields(final String containingClassName, final List
14141426 indent + " }\n \n " +
14151427 indent + " bool %1$sInActingVersion()\n " +
14161428 indent + " {\n " +
1429+ indent + "#if defined(__clang__)\n " +
14171430 indent + "#pragma clang diagnostic push\n " +
14181431 indent + "#pragma clang diagnostic ignored \" -Wtautological-compare\" \n " +
1432+ indent + "#endif\n " +
14191433 indent + " return m_actingVersion >= %1$sSinceVersion();\n " +
1434+ indent + "#if defined(__clang__)\n " +
14201435 indent + "#pragma clang diagnostic pop\n " +
1436+ indent + "#endif\n " +
14211437 indent + " }\n \n " ,
14221438 propertyName ,
14231439 signalToken .version ()));
0 commit comments