Update of /cvsroot/boost/boost/boost/fusion/sequence/intrinsic/mpl/detail
In directory 
sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv32508/sequence/intrinsic/mpl/detail

Modified Files:
        as.hpp clear.hpp 
Log Message:
vc7.1 bugfix (ICE)

Index: as.hpp
===================================================================
RCS file: 
/cvsroot/boost/boost/boost/fusion/sequence/intrinsic/mpl/detail/as.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- as.hpp      18 Dec 2006 21:09:53 -0000      1.2
+++ as.hpp      9 Feb 2007 12:16:38 -0000       1.3
@@ -8,56 +8,74 @@
 #if !defined(FUSION_AS_10022005_1442)
 #define FUSION_AS_10022005_1442
 
-#include <boost/fusion/sequence/conversion.hpp>
-
-namespace boost { namespace fusion { namespace detail 
+namespace boost { namespace fusion
 {
-    template <typename Tag>
-    struct as_impl;
-
-    template <>
-    struct as_impl<cons_tag>
+    namespace result_of
     {
         template <typename Sequence>
-        struct apply : result_of::as_list<Sequence> {};
-    };
+        struct as_list;
 
-    template <>
-    struct as_impl<map_tag>
-    {
         template <typename Sequence>
-        struct apply : result_of::as_map<Sequence> {};
-    };
+        struct as_map;
 
-    template <>
-    struct as_impl<set_tag>
-    {
         template <typename Sequence>
-        struct apply : result_of::as_set<Sequence> {};
-    };
+        struct as_set;
 
-    template <>
-    struct as_impl<vector_tag>
-    {
         template <typename Sequence>
-        struct apply : result_of::as_vector<Sequence> {};
-    };
+        struct as_vector;
 
-    template<>
-    struct as_impl<deque_tag>
-    {
         template <typename Sequence>
-        struct apply : result_of::as_deque<Sequence> {};
-    };
+        struct as_deque;
+    }
 
-    template <typename Tag, typename Sequence>
-    struct as
+    namespace detail
     {
-        typedef typename
-            as_impl<Tag>::template apply<Sequence>::type
-        type;
-    };
+        template <typename Tag>
+        struct as_impl;
 
-}}}
+        template <>
+        struct as_impl<cons_tag>
+        {
+            template <typename Sequence>
+            struct apply : result_of::as_list<Sequence> {};
+        };
+
+        template <>
+        struct as_impl<map_tag>
+        {
+            template <typename Sequence>
+            struct apply : result_of::as_map<Sequence> {};
+        };
+
+        template <>
+        struct as_impl<set_tag>
+        {
+            template <typename Sequence>
+            struct apply : result_of::as_set<Sequence> {};
+        };
+
+        template <>
+        struct as_impl<vector_tag>
+        {
+            template <typename Sequence>
+            struct apply : result_of::as_vector<Sequence> {};
+        };
+
+        template<>
+        struct as_impl<deque_tag>
+        {
+            template <typename Sequence>
+            struct apply : result_of::as_deque<Sequence> {};
+        };
+
+        template <typename Tag, typename Sequence>
+        struct as
+        {
+            typedef typename
+                as_impl<Tag>::template apply<Sequence>::type
+            type;
+        };
+    }
+}}
 
 #endif

Index: clear.hpp
===================================================================
RCS file: 
/cvsroot/boost/boost/boost/fusion/sequence/intrinsic/mpl/detail/clear.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- clear.hpp   16 Aug 2006 16:50:46 -0000      1.1
+++ clear.hpp   9 Feb 2007 12:16:38 -0000       1.2
@@ -8,25 +8,40 @@
 #if !defined(FUSION_CLEAR_10022005_1442)
 #define FUSION_CLEAR_10022005_1442
 
-#include <boost/fusion/sequence/container.hpp>
+#include <boost/fusion/sequence/container/vector/vector_fwd.hpp>
+#include <boost/fusion/sequence/container/list/list_fwd.hpp>
+#include <boost/fusion/sequence/container/map/map_fwd.hpp>
+#include <boost/fusion/sequence/container/set/set_fwd.hpp>
+#include <boost/fusion/sequence/container/deque/deque_fwd.hpp>
 
-namespace boost { namespace fusion { namespace detail 
+namespace boost { namespace fusion
 {
-    template <typename Tag>
-    struct clear;
+    struct cons_tag;
+    struct map_tag;
+    struct set_tag;
+    struct vector_tag;
+    struct deque_tag;
 
-    template <>
-    struct clear<cons_tag> : mpl::identity<list<> > {};
+    namespace detail
+    {
+        template <typename Tag>
+        struct clear;
 
-    template <>
-    struct clear<map_tag> : mpl::identity<map<> > {};
+        template <>
+        struct clear<cons_tag> : mpl::identity<list<> > {};
 
-    template <>
-    struct clear<set_tag> : mpl::identity<set<> > {};
+        template <>
+        struct clear<map_tag> : mpl::identity<map<> > {};
 
-    template <>
-    struct clear<vector_tag> : mpl::identity<vector<> > {};
+        template <>
+        struct clear<set_tag> : mpl::identity<set<> > {};
 
-}}}
+        template <>
+        struct clear<vector_tag> : mpl::identity<vector<> > {};
+
+        template <>
+        struct clear<deque_tag> : mpl::identity<deque<> > {};
+    }
+}}
 
 #endif


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to