Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-19 08:44:21

0001 /*
0002  * Distributed under the Boost Software License, Version 1.0.
0003  * (See accompanying file LICENSE_1_0.txt or copy at
0004  * https://www.boost.org/LICENSE_1_0.txt)
0005  *
0006  * Copyright (c) 2023 Andrey Semashev
0007  */
0008 
0009 #if !defined(BOOST_SCOPE_ENABLE_WARNINGS)
0010 
0011 #if defined(_MSC_VER) && !defined(__clang__)
0012 
0013 #pragma warning(push, 3)
0014 // unreferenced formal parameter
0015 #pragma warning(disable: 4100)
0016 // conditional expression is constant
0017 #pragma warning(disable: 4127)
0018 // function marked as __forceinline not inlined
0019 #pragma warning(disable: 4714)
0020 // decorated name length exceeded, name was truncated
0021 #pragma warning(disable: 4503)
0022 // qualifier applied to function type has no meaning; ignored
0023 #pragma warning(disable: 4180)
0024 // qualifier applied to reference type; ignored
0025 #pragma warning(disable: 4181)
0026 // unreachable code
0027 #pragma warning(disable: 4702)
0028 // destructor never returns, potential memory leak
0029 #pragma warning(disable: 4722)
0030 
0031 #elif (defined(__GNUC__) && !(defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC)) \
0032     && (__GNUC__ * 100 + __GNUC_MINOR__) >= 406) || defined(__clang__)
0033 
0034 // Note: clang-cl goes here as well, as it seems to support gcc-style warning control pragmas.
0035 
0036 #pragma GCC diagnostic push
0037 // unused parameter 'arg'
0038 #pragma GCC diagnostic ignored "-Wunused-parameter"
0039 // unused function 'foo'
0040 #pragma GCC diagnostic ignored "-Wunused-function"
0041 
0042 #if defined(__clang__)
0043 // template argument uses unnamed type
0044 #pragma clang diagnostic ignored "-Wunnamed-type-template-args"
0045 #endif // defined(__clang__)
0046 
0047 #endif
0048 
0049 #endif // !defined(BOOST_SCOPE_ENABLE_WARNINGS)