|
Boost : |
Subject: [boost] Checking for #pragma GCC diagnostic push|pop availability
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2015-12-08 14:27:42
Shane Turner wrote:
> I found another issue with a bad compiler version check in
> boost/interprocess/detail/config_begin.hpp before using "#pragma GCC
> diagnostic push", which, for GCC, is only available at version 4.6.0 and
> later. Since I'm using GCC 4.4.7, my compile fails.
It looks to me like interprocess is the one that really needs fixing.
[ There could be a lot of cleanup here, but that's for another time ]
I will make a PR.
-- Marshall
I have found (in non-test code)
#if defined(__GNUC__) && (__GNUC__*10000 + __GNUC_MINOR__*100 +
__GNUC_PATCHLEVEL__ > 40800)
type_traits/has_logical_not.hpp
#if BOOST_GCC >= 40700
tuple/detail/tuple_basic.hpp
#Effectively >= 40600
smart_ptr/shared_ptr.hpp
smart_ptr/scoped_ptr.hpp
smart_ptr/detail/shared_count.hpp
#if defined(BOOST_GCC) && BOOST_GCC >= 40600
random/detail/disable_warnings.hpp
random/detail/enable_warnings.hpp
#if defined(__clang__)
move/detail/std_ns_begin.hpp
move/detail/std_ns_end.hpp
#elif defined(__GNUC__) && !(defined(__INTEL_COMPILER) || defined(__ICL) ||
defined(__ICC) || defined(__ECC)) \
&& (__GNUC__ * 100 + __GNUC_MINOR__) >= 406
log/detail/header.hpp
log/detail/footer.hpp
#if defined(__clang__) || (defined(__GNUC__) && !(defined(__INTEL_COMPILER)
|| defined(__ICL) || defined(__ICC) || defined(__ECC)) && (__GNUC__ > 4 ||
(__GNUC__ == 4 && __GNUC_MINOR__ >= 6)))
lexical_cast/try_lexical_convert.hpp
#if defined(BOOST_GCC) && (BOOST_GCC >= 40000)
interprocess/detail/config_begin.hpp
interprocess/detail/config_end.hpp
#Effectively >= 40600
get_pointer.hpp
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk