vc7.1 bugfix (ICE)

[SVN r36918]
This commit is contained in:
Joel de Guzman
2007-02-09 12:16:39 +00:00
parent 693200182f
commit 94c2c0e526
7 changed files with 128 additions and 71 deletions

View File

@ -62,7 +62,7 @@ namespace boost { namespace fusion
{
template <typename T>
struct category_of
: extension::category_of_impl<typename detail::tag_of<T>::type>::
: extension::category_of_impl<typename fusion::detail::tag_of<T>::type>::
template apply<T>
{};
@ -70,42 +70,42 @@ namespace boost { namespace fusion
struct is_associative
: is_base_of<
associative_sequence_tag
, typename category_of<T>::type>
, typename category_of<T>::type>
{};
template <typename T>
struct is_incrementable
: is_base_of<
incrementable_traversal_tag
, typename category_of<T>::type>
, typename category_of<T>::type>
{};
template <typename T>
struct is_single_pass
: is_base_of<
single_pass_traversal_tag
, typename category_of<T>::type>
, typename category_of<T>::type>
{};
template <typename T>
struct is_forward
: is_base_of<
forward_traversal_tag
, typename category_of<T>::type>
{};
, typename category_of<T>::type>
{};
template <typename T>
struct is_bidirectional
: is_base_of<
bidirectional_traversal_tag
, typename category_of<T>::type>
{};
, typename category_of<T>::type>
{};
template <typename T>
struct is_random_access
: is_base_of<
random_access_traversal_tag
, typename category_of<T>::type>
, typename category_of<T>::type>
{};
}
}}

View File

@ -11,7 +11,7 @@
#include <boost/fusion/support/detail/is_view.hpp>
#include <boost/fusion/support/tag_of.hpp>
namespace boost { namespace fusion
namespace boost { namespace fusion
{
// Special tags:
struct sequence_facade_tag;
@ -54,8 +54,8 @@ namespace boost { namespace fusion
namespace traits
{
template <typename T>
struct is_view :
extension::is_view_impl<typename detail::tag_of<T>::type>::
struct is_view :
extension::is_view_impl<typename fusion::detail::tag_of<T>::type>::
template apply<T>::type
{};
}