9e052883 |
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 |