id summary reporter owner description type status milestone component version severity resolution keywords cc 11934 Various warnings in 1.60 MPL when compiling with nvcc Alex Grund Aleksey Gurtovoy "I'm compiling a larger project ( https://github.com/ComputationalRadiationPhysics/picongpu/ current dev) which uses boost heavily. However a lot of warnings are issued. Since we are quite agnostic to warnings (compiling with many warnings enabled and -Werror) this is troubling and it would be great, if those are fixed in future versions. If I remember correctly older versions (1.58) did not had them. CUDA 7.0 {{{ boost/mpl/map/aux_/item.hpp(54): warning: ""boost::mpl::aux::type_wrapper operator/(const boost::mpl::m_item &, boost::mpl::aux::type_wrapper *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(55): warning: ""boost::mpl::aux::type_wrapper> operator|(const boost::mpl::m_item &, boost::mpl::next::type *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(56): warning: ""char (&operator||(const boost::mpl::m_item &, boost::mpl::aux::type_wrapper *))[boost::mpl::next::type::value]"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(71): warning: ""boost::mpl::aux::type_wrapper operator/(const boost::mpl::m_mask &, boost::mpl::aux::type_wrapper *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(72): warning: ""boost::mpl::aux::type_wrapper operator|(const boost::mpl::m_mask &, boost::mpl::x_order_impl::type *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp:54:109: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator/(const boost::mpl::m_item&, boost::mpl::aux::type_wrapper*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, VALUE_BY_KEY, m_item, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:54:109: note: (if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) boost/mpl/map/aux_/item.hpp:55:90: warning: friend declaration ‘boost::mpl::aux::type_wrapper > boost::mpl::operator|(const boost::mpl::m_item&, boost::mpl::m_item::order*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, ITEM_BY_ORDER, m_item, order* ); ^ boost/mpl/map/aux_/item.hpp:56:85: warning: friend declaration ‘char (& boost::mpl::operator||(const boost::mpl::m_item&, boost::mpl::aux::type_wrapper*))[boost::mpl::m_item::order:: value]’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( order_tag_, ORDER_BY_KEY, m_item, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:71:121: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator/(const boost::mpl::m_mask&, boost::mpl::aux::type_wrapper*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, VALUE_BY_KEY, m_mask, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:72:94: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator|(const boost::mpl::m_mask&, boost::mpl::m_mask::key_order_*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, ITEM_BY_ORDER, m_mask, key_order_* ); }}} CUDA 7.5 {{{ boost/mpl/map/aux_/item.hpp(54): warning: ""boost::mpl::aux::type_wrapper operator/(const boost::mpl::m_item &, boost::mpl::aux::type_wrapper *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(55): warning: ""boost::mpl::aux::type_wrapper> operator|(const boost::mpl::m_item &, boost::mpl::next::type *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(56): warning: ""char (&operator||(const boost::mpl::m_item &, boost::mpl::aux::type_wrapper *))[boost::mpl::next::type::value]"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(71): warning: ""boost::mpl::aux::type_wrapper operator/(const boost::mpl::m_mask &, boost::mpl::aux::type_wrapper *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp(72): warning: ""boost::mpl::aux::type_wrapper operator|(const boost::mpl::m_mask &, boost::mpl::x_order_impl::type *)"" declares a non-template function -- add <> to refer to a template instance boost/mpl/map/aux_/item.hpp:54:109: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator/(const boost::mpl::m_item&, boost::mpl::aux::type_wrapper*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, VALUE_BY_KEY, m_item, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:54:109: note: (if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) boost/mpl/map/aux_/item.hpp:55:90: warning: friend declaration ‘boost::mpl::aux::type_wrapper > boost::mpl::operator|(const boost::mpl::m_item&, boost::mpl::m_item::order*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, ITEM_BY_ORDER, m_item, order* ); ^ boost/mpl/map/aux_/item.hpp:56:85: warning: friend declaration ‘char (& boost::mpl::operator||(const boost::mpl::m_item&, boost::mpl::aux::type_wrapper*))[boost::mpl::m_item::order:: value]’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( order_tag_, ORDER_BY_KEY, m_item, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:71:121: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator/(const boost::mpl::m_mask&, boost::mpl::aux::type_wrapper*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, VALUE_BY_KEY, m_mask, aux::type_wrapper* ); ^ boost/mpl/map/aux_/item.hpp:72:94: warning: friend declaration ‘boost::mpl::aux::type_wrapper boost::mpl::operator|(const boost::mpl::m_mask&, boost::mpl::m_mask::key_order_*)’ declares a non-template function [-Wnon-template-friend] BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper, ITEM_BY_ORDER, m_mask, key_order_* ); }}} " Bugs new To Be Determined mpl Boost 1.60.0 Cosmetic