On 2017-03-23 22:35, Steven Watanabe via Boost-users wrote:
AMDG
On 03/23/2017 01:51 PM, Oswin Krause wrote:
On 2017-03-23 16:43, Steven Watanabe via Boost-users wrote:
The warnings were as trivial as (for example): ../ext/boost/boost/type_traits/is_default_constructible.hpp:16:22: warning: "BOOST_GCC_VERSION_WORKAROUND_GUARD" is not defined [-Wundef] #if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700)
<snip>
in this specific case the warning is not a false positive, or useless, at elast as far as i udnerstand it. BOOST_GCC_VERSION_WORKAROUND_GUARD is really not defined anywhere in boost, so this #ifdef block will never be used.
No, that's wrong. BOOST_WORKAROUND is intentionally written so that an undefined XXX_WORKAROUND_GUARD functions correctly. In fact, the sole purpose of BOOST_GCC_VERSION_WORKAROUND_GUARD is to suppress the warning about BOOST_GCC_VERSION not being defined (However, keeping a single global list of macros isn't scalable, and it appears that the list isn't up-to-date).
Forget my previous post. I now understood after reading the macro three times again (i wrongly thought the guard would be one if the compiler was active). Sorry for the noise.