0029909: Coding - GCC compiler warnings in Qt headers while building Samples in OCCT...
[occt.git] / src / Standard / Standard_WarningsDisable.hxx
CommitLineData
130eb114 1// Copyright (c) 2018 OPEN CASCADE SAS
2//
3// This file is part of Open CASCADE Technology software library.
4//
5// This library is free software; you can redistribute it and/or modify it under
6// the terms of the GNU Lesser General Public License version 2.1 as published
7// by the Free Software Foundation, with special exception defined in the file
8// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9// distribution for complete text of the license and disclaimer of any warranty.
10//
11// Alternatively, this file may be used under the terms of Open CASCADE
12// commercial license or contractual agreement.
13
14//!@file Supresses compiler warnings.
15//!
16//! Standard_WarningsDisable.hxx disables all compiler warnings.
17//! Standard_WarningsRestore.hxx restore the previous state of warnings.
18//!
19//! Use these headers to wrap include directive containing external (non-OCCT)
20//! header files to avoid compiler warnings to be generated for these files.
21//! They should always be used in pair:
22//!
23//! #include <Standard_WarningsDisable.hxx>
24//! #include <dirty_header.h> // some header that can generate warnings
25//! #include <Standard_WarningsRestore.hxx>
26
b2cd90e2 27#if defined(__clang__)
28 #pragma clang diagnostic push
29 #pragma clang diagnostic ignored "-Wall"
30 #pragma clang diagnostic ignored "-Wextra"
31#elif defined(_MSC_VER)
32 #pragma warning(push, 0)
33#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
34 // -Wall does not work here for GCC, so the only way is to list all most important warnings...
35 #pragma GCC diagnostic push
36 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
37 #pragma GCC diagnostic ignored "-Wunused-variable"
38 #pragma GCC diagnostic ignored "-Wunused-parameter"
39 #pragma GCC diagnostic ignored "-Wenum-compare"
40 #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8))
41 #pragma GCC diagnostic ignored "-Wunused-local-typedefs"
42 #endif
130eb114 43#endif