[Boost-bugs] [Boost C++ Libraries] #8102: signals2 is trying to use std::get with boost::tuple

Subject: [Boost-bugs] [Boost C++ Libraries] #8102: signals2 is trying to use std::get with boost::tuple
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-02-19 00:14:50


#8102: signals2 is trying to use std::get with boost::tuple
-------------------------------------+--------------------------------------
 Reporter: eric_niebler | Owner: fmhess
     Type: Bugs | Status: new
Milestone: Boost 1.54.0 | Component: signals2
  Version: Boost Development Trunk | Severity: Problem
 Keywords: |
-------------------------------------+--------------------------------------
 `signals2/detail/variadic_slot_invoker.hpp` has the following:

 {{{
 // if compiler has std::tuple use it instead of boost::tuple
 // because boost::tuple does not have variadic template support at
 present.
 #ifdef BOOST_NO_CXX11_HDR_TUPLE
 #include <boost/tuple/tuple.hpp>
 #define BOOST_SIGNALS2_TUPLE boost::tuple
 #else
 #include <tuple>
 #define BOOST_SIGNALS2_TUPLE std::tuple
 #endif
 }}}

 Then in place of `boost::tuple` or `std::tuple`, it uses
 `BOOST_SIGNALS2_TUPLE`. That's dandy, but it unconditionally uses
 `std::get` to access elements from the tuple. This naturally leads to
 compile failures because `std::get` doesn't know what a `boost::tuple` is.

 Patch attached.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8102>
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:12 UTC