Repository navigation
Open
Labels
Description
Complete list of warnings when Boost 1.72 is built with GCC 7.5 with -Wsuggest-override added to cxxflags:
./boost/python/object/py_function.hpp:102:22: warning: ‘unsigned int boost::python::objects::full_py_function_impl::max_arity() const [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector1]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:107:46: warning: ‘boost::python::detail::py_func_sig_info boost::python::objects::full_py_function_impl::signature() const [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector1]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:36:15: warning: ‘PyObject* boost::python::objects::caller_py_function_impl::operator()(PyObject*, PyObject*) [with Caller = boost::python::detail::caller >; PyObject = _object]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:41:22: warning: ‘unsigned int boost::python::objects::caller_py_function_impl::min_arity() const [with Caller = boost::python::detail::caller >]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:46:46: warning: ‘boost::python::detail::py_func_sig_info boost::python::objects::caller_py_function_impl::signature() const [with Caller = boost::python::detail::caller >]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:62:15: warning: ‘PyObject* boost::python::objects::signature_py_function_impl::operator()(PyObject*, PyObject*) [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector2<_object*, _object*>; PyObject = _object]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:67:22: warning: ‘unsigned int boost::python::objects::signature_py_function_impl::min_arity() const [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector2<_object*, _object*>]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:72:46: warning: ‘boost::python::detail::py_func_sig_info boost::python::objects::signature_py_function_impl::signature() const [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector2<_object*, _object*>]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:92:15: warning: ‘PyObject* boost::python::objects::full_py_function_impl::operator()(PyObject*, PyObject*) [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector1; PyObject = _object]’ can be marked override [-Wsuggest-override] ./boost/python/object/py_function.hpp:97:22: warning: ‘unsigned int boost::python::objects::full_py_function_impl::min_arity() const [with Caller = _object* (*)(_object*, _object*); Sig = boost::mpl::vector1]’ can be marked override [-Wsuggest-override]
Depends on boostorg/config#329.
Activity
stefanseefeld commentedon Apr 13, 2020
Not sure what to say. Boost.Python doesn't yet require C++11, so I'd suggest to simply not compile it with
-Wsuggest-overridefor now.EugeneZelenko commentedon Apr 13, 2020
Applications that use Boost.Python may be compiled with C++11 or newer. Also modern vwrsions of GCC and Clang set C++11/14 by default.
It's not very convenient to suppress warnings in each file that include Boost.Python.
stefanseefeld commentedon Apr 13, 2020
Can you suggest any alternative, short of making C++11 a requirement ?
EugeneZelenko commentedon Apr 13, 2020
Please take a look on boostorg/config#329 mentioned above. There will be macro that will handle both C++-11/newer and older versions.
EugeneZelenko commentedon Apr 13, 2020
BOOST_OVERRIDEwas introduced in boostorg/config@ffe4e0f.EugeneZelenko commentedon Apr 27, 2020
Patch is in python.txt.
EugeneZelenko commentedon May 30, 2020
Fixes are in #309.