id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 12940,Missing initializer for member,mattyclarkson@…,timblechmann,"I have the following error when compiling with my built boost 1.63: {{{ /usr/include/boost/atomic/detail/bitwise_cast.hpp: In instantiation of 'To boost::atomics::detail::bitwise_cast(const From&) [with To = long unsigned int; From = void*]': /usr/include/boost/atomic/detail/atomic_template.hpp:556:139: required from here /usr/include/boost/atomic/detail/bitwise_cast.hpp:39:14: error: missing initializer for member 'boost::atomics::detail::bitwise_cast(const From&) [with To = long unsigned int; From = void*]::::to' [-Werror=missing-field-initializers] value = {}; }}} The code looks like: {{{ template< typename To, typename From > BOOST_FORCEINLINE To bitwise_cast(From const& from) BOOST_NOEXCEPT { struct { To to; } value = {}; BOOST_ATOMIC_DETAIL_MEMCPY ( &reinterpret_cast< char& >(value.to), &reinterpret_cast< const char& >(from), (sizeof(From) < sizeof(To) ? sizeof(From) : sizeof(To)) ); return value.to; } }}} My proposed fix is: {{{ template< typename To, typename From > BOOST_FORCEINLINE To bitwise_cast(From const& from) BOOST_NOEXCEPT { struct Value { To to; Value() : to() {} } struct Value value; BOOST_ATOMIC_DETAIL_MEMCPY ( &reinterpret_cast< char& >(value.to), &reinterpret_cast< const char& >(from), (sizeof(From) < sizeof(To) ? sizeof(From) : sizeof(To)) ); return value.to; } }}} ",Bugs,closed,To Be Determined,atomic,Boost 1.63.0,Problem,fixed,,Andrey.Semashev@…