From b7fb20e69a29b1290231d8477019a1ce922a2dd1 Mon Sep 17 00:00:00 2001 From: Christopher Schmidt Date: Sun, 25 Sep 2011 17:36:13 +0000 Subject: [PATCH] Fusion: updates [SVN r74566] --- include/boost/fusion/support/tag_of.hpp | 12 +++++++++--- include/boost/fusion/support/tag_of_fwd.hpp | 3 +++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/include/boost/fusion/support/tag_of.hpp b/include/boost/fusion/support/tag_of.hpp index 187467c5..5df9e84a 100644 --- a/include/boost/fusion/support/tag_of.hpp +++ b/include/boost/fusion/support/tag_of.hpp @@ -50,11 +50,17 @@ namespace boost { namespace fusion namespace traits { + template + struct tag_of_fallback + { + typedef non_fusion_tag type; + }; + template struct tag_of - : mpl::if_< fusion::detail::is_mpl_sequence, - mpl::identity, - mpl::identity >::type + : mpl::eval_if< fusion::detail::is_mpl_sequence, + mpl::identity >, + tag_of_fallback >::type {}; template diff --git a/include/boost/fusion/support/tag_of_fwd.hpp b/include/boost/fusion/support/tag_of_fwd.hpp index ba434d93..dfc0e01c 100644 --- a/include/boost/fusion/support/tag_of_fwd.hpp +++ b/include/boost/fusion/support/tag_of_fwd.hpp @@ -12,6 +12,9 @@ namespace boost { namespace fusion { namespace traits { + template + struct tag_of_fallback; + template struct tag_of; }