[Boost-bugs] [Boost C++ Libraries] #5042: error: redefinition of 'size_t boost::asio::detail::calculate_hash_value(SOCKET)'

Subject: [Boost-bugs] [Boost C++ Libraries] #5042: error: redefinition of 'size_t boost::asio::detail::calculate_hash_value(SOCKET)'
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-01-06 10:51:06


#5042: error: redefinition of 'size_t
boost::asio::detail::calculate_hash_value(SOCKET)'
------------------------------------------+---------------------------------
 Reporter: Vladislav <phprus@…> | Owner: chris_kohlhoff
     Type: Bugs | Status: new
Milestone: Boost 1.46.0 | Component: asio
  Version: Boost 1.44.0 | Severity: Problem
 Keywords: |
------------------------------------------+---------------------------------
 Hello!

 I am using compiler i686-pc-mingw32-g++ from openSUSE repository:
 {{{
 phprus_at_notebook-hp6730b:/usr/lib> i686-pc-mingw32-g++ -v
 Using built-in specs.
 COLLECT_GCC=i686-pc-mingw32-g++
 COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-pc-mingw32/4.5.2/lto-wrapper
 Target: i686-pc-mingw32
 Configured with: ../configure --prefix=/usr --bindir=/usr/bin
 --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/lib
 --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share
 --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=i686-pc-
 mingw32 --with-gnu-as --with-gnu-ld --verbose --without-newlib --disable-
 multilib --disable-plugin --with-system-zlib --disable-nls --without-
 included-gettext --disable-win32-registry --enable-version-specific-
 runtime-libs --with-sysroot=/usr/i686-pc-mingw32/sys-root --enable-
 languages=c,c++,fortran,objc,obj-c++ --without-x --enable-hash-
 synchronization
 Thread model: win32
 gcc version 4.5.2 (GCC)
 }}}

 Boost version 1.44.0

 At header-file <boost/asio.hpp> usage there is a compilation error:
 {{{
 In file included from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/reactor_op_queue.hpp:19:0,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/select_reactor.hpp:29,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/reactor.hpp:27,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/win_iocp_socket_service.hpp:35,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/datagram_socket_service.hpp:24,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/basic_datagram_socket.hpp:21,
                  from /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio.hpp:20,
                  from ********/SimpleClient.cpp:17:
 /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/hash_map.hpp: In function 'size_t
 boost::asio::detail::calculate_hash_value(SOCKET)':
 /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/hash_map.hpp:46:20: error:
 redefinition of 'size_t boost::asio::detail::calculate_hash_value(SOCKET)'
 /usr/i686-pc-mingw32/sys-
 root/mingw/include/boost/asio/detail/hash_map.hpp:34:20: error: 'size_t
 boost::asio::detail::calculate_hash_value(int)' previously defined here
 }}}

 SOCKET type equal INT_PTR (/usr/i686-pc-mingw32/sys-
 root/mingw/include/mingw_inc/_socket_types.h)
 On win32 INT_PTR equal int (/usr/i686-pc-mingw32/sys-
 root/mingw/include/basetds.h)

 It possible usage boost::enable_if for detect this collision.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5042>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:05 UTC