Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
4.4 KiB

  1. /*----------------------------------------------------------------------------
  2. * Note that we don't want to use a single line comment before the warning is
  3. * disabled.
  4. *
  5. * Microsoft Windows
  6. * Copyright (C) Microsoft Corporation, 1992 - 2000.
  7. *
  8. * File: w4warn.h
  9. *
  10. * Contents: #pragmas to adjust warning levels.
  11. *
  12. *---------------------------------------------------------------------------*/
  13. /*
  14. * Level 4 warnings to suppress.
  15. */
  16. #pragma warning(disable:4001) /* nonstandard extension 'extension' was used */
  17. #pragma warning(disable:4097) /* typedef name 'type' used as synonym for class 'class' */
  18. #pragma warning(disable:4100) /* unreferenced formal parameter */
  19. #pragma warning(disable:4115) /* named type definition in parentheses */
  20. #pragma warning(disable:4134) /* conversion between pointers to members of same class */
  21. #pragma warning(disable:4152) /* nonstandard extension, function/data pointer conversion in expression */
  22. #pragma warning(disable:4200) /* nonstandard extension used : zero-sized array in struct/union */
  23. #pragma warning(disable:4201) /* nonstandard extension used : nameless struct/union */
  24. #pragma warning(disable:4204) /* nonstandard extension used : non-constant aggregate initializer */
  25. #pragma warning(disable:4209) /* nonstandard extension used : benign typedef redefinition */
  26. #pragma warning(disable:4214) /* nonstandard extension used : bit field types other than int */
  27. #pragma warning(disable:4505) /* unreferenced local function has been removed */
  28. #pragma warning(disable:4511) /* 'class' : copy constructor could not be generated */
  29. #pragma warning(disable:4512) /* 'class': assignment operator could not be generated */
  30. #pragma warning(disable:4514) /* 'function' : unreferenced inline function has been removed */
  31. #pragma warning(disable:4552) /* operator has no effect; expected operator with side-effect */
  32. #pragma warning(disable:4553) /* operator has no effect; did you intend '='? */
  33. #pragma warning(disable:4705) /* statement has no effect */
  34. #pragma warning(disable:4710) /* function call not expanded */
  35. #pragma warning(disable:4711) /* function 'function' selected for inline expansion */
  36. #pragma warning(disable:4068) /* unknown pragma */
  37. /*
  38. * Warning 4244 is benign more often than not, so if you don't want it then
  39. * uncomment this to filter out those errors.
  40. *
  41. */
  42. #pragma warning(disable:4244) /* conversion from 'type' to 'type', possible loss of data */
  43. /*
  44. * This helps to track down "Illegal attempt to instantiate abstract class" messages
  45. */
  46. #pragma warning(error:4259) /* pure virtual function not defined */
  47. #pragma warning(error:4102) /* 'label' : unreferenced label */
  48. /*
  49. * Level 4 warnings that we want treated as level 3 warnings.
  50. */
  51. #ifndef DEBUG
  52. #pragma warning(3:4127) /* conditional expression is constant */
  53. #else
  54. // Too many places w/ ASSERT(FALSE); which will trigger this
  55. #pragma warning(disable:4127) /* conditional expression is constant */
  56. #endif
  57. #pragma warning(3:4702) /* unreachable code */
  58. #pragma warning(3:4706) /* assignment within conditional expression */
  59. #pragma warning(disable:4041) /* compiler limit reached: terminating browser output */
  60. #ifdef _MAC
  61. #pragma warning(disable:4229) /* anachronism used : modifiers on data are ignored */
  62. #pragma warning(disable:4798) /* pcode: constructors and destructors have native code generated */
  63. #endif
  64. #ifdef _M_IA64
  65. #pragma warning(disable:4268) /* 'variable' : 'const' static/global data initialized with compiler generated default constructor fills the object with zeros */
  66. #endif
  67. /*
  68. * VC6.0 temporary hack
  69. */
  70. /*
  71. #pragma warning(disable:4189) // local variable initialized but not used
  72. #pragma warning(disable:4701) // local variable used and may not have been initialized
  73. #pragma warning(disable:4096) // __cdecl must be used with ...
  74. */