Opened 14 years ago
Closed 13 years ago
#1894 closed Bugs (fixed)
fusion\support\tag_of.hpp, boost::fusion::traits
| Reported by: | Owned by: | Joel de Guzman | |
|---|---|---|---|
| Milestone: | Boost 1.38.0 | Component: | fusion |
| Version: | Boost 1.35.0 | Severity: | Problem |
| Keywords: | deduce_sequence, mpl | Cc: |
Description
Here is the code I tried to compile with VC++2008:
typedef boost::fusion::traits::deduce_sequence <
boost::mpl::vector<int, char>
::type seq_t;
error C2039: 'is_mpl_sequence' : is not a member of 'boost::fusion::traits::detail'
I think it because 'fusion\support\deduce_sequence.hpp' introduces 'detail' namespace into boost::fusion::traits (instead of boost::fusion).
Attachments (2)
Change History (5)
by , 14 years ago
| Attachment: | test_deduce_sequence.cpp added |
|---|
comment:1 by , 14 years ago
There is what I propose to change in 'boost/fusion/support/tag_of.hpp' (I'm not sure if these changes are ideologically correct but all the Boost::Fusion tests are passed with them):
Comparing files tag_of.hpp and TAG_OF.HPP_OLD
***** tag_of.hpp
struct tag_of
: mpl::if_< fusion::detail::is_mpl_sequence<Sequence>,
mpl::identity<mpl_sequence_tag>,
***** TAG_OF.HPP_OLD
struct tag_of
: mpl::if_< detail::is_mpl_sequence<Sequence>,
mpl::identity<mpl_sequence_tag>,
*****
***** tag_of.hpp
{
BOOST_MPL_ASSERT_NOT((fusion::detail::is_specialized<Sequence>));
};
***** TAG_OF.HPP_OLD
{
BOOST_MPL_ASSERT_NOT((detail::is_specialized<Sequence>));
};
*****
Thanks.
by , 14 years ago
| Attachment: | fusion_tag_of.patch added |
|---|
patch for the 'boost/fusion/support/tag_of.hpp' in the unified diff format
comment:2 by , 14 years ago
| Milestone: | Boost 1.36.0 → Boost 1.38.0 |
|---|
comment:3 by , 13 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |

This file could be used to check that deduce_sequence compiles with boost::mpl::vector as parameter