id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 12941,MinGW- Ignore return value from BOOST_INTERLOCKED_EXCHANGE,mattyclarkson@…,viboes,"Warnings are created by MinGW for ignoring the return value in `boost::detail::interlocked_read_acquire`: {{{ namespace boost { namespace detail { inline long interlocked_read_acquire(long volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE(x,0,0); } inline void* interlocked_read_acquire(void* volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(x,0,0); } inline void interlocked_write_release(long volatile* x,long value) BOOST_NOEXCEPT { BOOST_INTERLOCKED_EXCHANGE(x,value); } inline void interlocked_write_release(void* volatile* x,void* value) BOOST_NOEXCEPT { BOOST_INTERLOCKED_EXCHANGE_POINTER(x,value); } } } }}} My proposed fix it to cast the return value to `void`: {{{ namespace boost { namespace detail { inline long interlocked_read_acquire(long volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE(x,0,0); } inline void* interlocked_read_acquire(void* volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(x,0,0); } inline void interlocked_write_release(long volatile* x,long value) BOOST_NOEXCEPT { (void)BOOST_INTERLOCKED_EXCHANGE(x,value); } inline void interlocked_write_release(void* volatile* x,void* value) BOOST_NOEXCEPT { (void)BOOST_INTERLOCKED_EXCHANGE_POINTER(x,value); } } } }}} It would also be possible to use `static_cast(...)`: {{{ namespace boost { namespace detail { inline long interlocked_read_acquire(long volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE(x,0,0); } inline void* interlocked_read_acquire(void* volatile* x) BOOST_NOEXCEPT { return BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(x,0,0); } inline void interlocked_write_release(long volatile* x,long value) BOOST_NOEXCEPT { static_cast(BOOST_INTERLOCKED_EXCHANGE(x,value)); } inline void interlocked_write_release(void* volatile* x,void* value) BOOST_NOEXCEPT { static_cast(BOOST_INTERLOCKED_EXCHANGE_POINTER(x,value)); } } } }}}",Support Requests,closed,,thread,Boost 1.63.0,Problem,worksforme,,