22 #ifdef SILENCE_EXTERNAL_WARNINGS 28 # define __GNUC_VERSION__ (__GNUC__ * 100 \ 30 # if (__GNUC_VERSION__ >= 406) 31 # define GNU_COMPILER_OK 1 33 # define GNU_COMPILER_OK 0 36 # define GNU_COMPILER_OK 0 41 #if defined(__clang__) 42 # define CLANG_COMPILER_OK 1 44 # define CLANG_COMPILER_OK 0 48 #define COMPATIBLE_COMPILER (GNU_COMPILER_OK || CLANG_COMPILER_OK) 55 #if COMPATIBLE_COMPILER 56 #pragma GCC diagnostic push 59 #pragma GCC diagnostic ignored "-Wpragmas" 60 #pragma GCC diagnostic ignored "-Wdeprecated-declarations" 61 #pragma GCC diagnostic ignored "-Wdeprecated-register" 62 #pragma GCC diagnostic ignored "-Wignored-qualifiers" 63 #pragma GCC diagnostic ignored "-Wmismatched-tags" 64 #pragma GCC diagnostic ignored "-Wshadow" 65 #pragma GCC diagnostic ignored "-Wsign-compare" 66 #pragma GCC diagnostic ignored "-Wunused-parameter" 67 #pragma GCC diagnostic ignored "-Wtautological-compare" 68 #pragma GCC diagnostic ignored "-Wtype-limits" 69 #pragma GCC diagnostic ignored "-Wunused-function" 70 #pragma GCC diagnostic ignored "-Wunneeded-internal-declaration" 71 #pragma GCC diagnostic ignored "-Wunused-private-field" 72 #pragma GCC diagnostic ignored "-Wunused-variable" 73 #pragma GCC diagnostic ignored "-Wunused-local-typedefs" 74 #pragma GCC diagnostic ignored "-Wcast-align" 75 #pragma GCC diagnostic ignored "-Wcast-qual" 76 #pragma GCC diagnostic ignored "-Wignored-attributes" 77 #endif // COMPATIBLE_COMPILER 79 #endif // SILENCE_EXTERNAL_WARNINGS