id summary reporter owner description type status milestone component version severity resolution keywords cc 9100 has_*_operator.hpp generates C6334 using VC++ ianjirka@… John Maddock "Warning 2 warning C6334: sizeof operator applied to an expression with an operator might yield unexpected results: Parentheses can be used to disambiguate certain usages. c:\users\ian\dev\tensor\main\code\external\boost\latest\boost\type_traits\detail\has_binary_operator.hpp This can be fixed by adding an extra set of parentheses around returns_void( ... ). For example: sizeof((returns_void(...)) For example: has_binary_operator.hpp:95 Was: BOOST_STATIC_CONSTANT( bool, value = (sizeof(::boost::type_traits::yes_type) == sizeof( returns_void( (make() BOOST_TT_TRAIT_OP make(), returns_void_t()) ))) ); With fix: BOOST_STATIC_CONSTANT( bool, value = (sizeof(::boost::type_traits::yes_type) == sizeof((returns_void( (make() BOOST_TT_TRAIT_OP make(), returns_void_t()) )))) ); I was able to fix has_binary_operator.hpp and has_prefix_operator.hpp this way. I'm sure other metafunctions are affected as well." Bugs closed To Be Determined type_traits Boost 1.54.0 Problem fixed