| 1 | /* Compiler.h\r |
| 2 | 2021-01-05 : Igor Pavlov : Public domain */\r |
| 3 | \r |
| 4 | #ifndef __7Z_COMPILER_H\r |
| 5 | #define __7Z_COMPILER_H\r |
| 6 | \r |
| 7 | #ifdef __clang__\r |
| 8 | #pragma clang diagnostic ignored "-Wunused-private-field"\r |
| 9 | #endif\r |
| 10 | \r |
| 11 | #ifdef _MSC_VER\r |
| 12 | \r |
| 13 | #ifdef UNDER_CE\r |
| 14 | #define RPC_NO_WINDOWS_H\r |
| 15 | /* #pragma warning(disable : 4115) // '_RPC_ASYNC_STATE' : named type definition in parentheses */\r |
| 16 | #pragma warning(disable : 4201) // nonstandard extension used : nameless struct/union\r |
| 17 | #pragma warning(disable : 4214) // nonstandard extension used : bit field types other than int\r |
| 18 | #endif\r |
| 19 | \r |
| 20 | #if _MSC_VER >= 1300\r |
| 21 | #pragma warning(disable : 4996) // This function or variable may be unsafe\r |
| 22 | #else\r |
| 23 | #pragma warning(disable : 4511) // copy constructor could not be generated\r |
| 24 | #pragma warning(disable : 4512) // assignment operator could not be generated\r |
| 25 | #pragma warning(disable : 4514) // unreferenced inline function has been removed\r |
| 26 | #pragma warning(disable : 4702) // unreachable code\r |
| 27 | #pragma warning(disable : 4710) // not inlined\r |
| 28 | #pragma warning(disable : 4714) // function marked as __forceinline not inlined\r |
| 29 | #pragma warning(disable : 4786) // identifier was truncated to '255' characters in the debug information\r |
| 30 | #endif\r |
| 31 | \r |
| 32 | #ifdef __clang__\r |
| 33 | #pragma clang diagnostic ignored "-Wdeprecated-declarations"\r |
| 34 | #pragma clang diagnostic ignored "-Wmicrosoft-exception-spec"\r |
| 35 | // #pragma clang diagnostic ignored "-Wreserved-id-macro"\r |
| 36 | #endif\r |
| 37 | \r |
| 38 | #endif\r |
| 39 | \r |
| 40 | #define UNUSED_VAR(x) (void)x;\r |
| 41 | /* #define UNUSED_VAR(x) x=x; */\r |
| 42 | \r |
| 43 | #endif\r |