Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2007-04-27 21:38:54


The attached patch to Fusion on HEAD is required to get xpressive
compiling with gcc-4.3 and ConceptGCC. OK to commit?

-- 
Eric Niebler
Boost Consulting
www.boost-consulting.com

? Debug
? fusion-conceptgcc.patch.txt
? fusion.vcproj
? fusion_vcproj_begin.txt
? fusion_vcproj_end.txt
? make_proj.cmd
Index: algorithm/transformation/insert.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/fusion/algorithm/transformation/insert.hpp,v
retrieving revision 1.2
diff -b -d -u -r1.2 insert.hpp
--- algorithm/transformation/insert.hpp 2 Mar 2007 10:44:06 -0000 1.2
+++ algorithm/transformation/insert.hpp 28 Apr 2007 00:35:33 -0000
@@ -30,7 +30,7 @@
 
             typedef iterator_range<first_type, pos_type> left_type;
             typedef iterator_range<pos_type, last_type> right_type;
- typedef single_view<element_type> single_view;
+ typedef fusion::single_view<element_type> single_view;
             typedef joint_view<left_type, single_view const> left_insert_type;
             typedef joint_view<left_insert_type, right_type> type;
         };
Index: algorithm/transformation/push_back.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/fusion/algorithm/transformation/push_back.hpp,v
retrieving revision 1.2
diff -b -d -u -r1.2 push_back.hpp
--- algorithm/transformation/push_back.hpp 2 Mar 2007 10:44:06 -0000 1.2
+++ algorithm/transformation/push_back.hpp 28 Apr 2007 00:35:33 -0000
@@ -18,7 +18,7 @@
         template <typename Sequence, typename T>
         struct push_back
         {
- typedef single_view<typename detail::as_fusion_element<T>::type> single_view;
+ typedef fusion::single_view<typename detail::as_fusion_element<T>::type> single_view;
             typedef joint_view<Sequence, single_view const> type;
         };
     }
Index: algorithm/transformation/push_front.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/fusion/algorithm/transformation/push_front.hpp,v
retrieving revision 1.2
diff -b -d -u -r1.2 push_front.hpp
--- algorithm/transformation/push_front.hpp 2 Mar 2007 10:44:06 -0000 1.2
+++ algorithm/transformation/push_front.hpp 28 Apr 2007 00:35:33 -0000
@@ -18,7 +18,7 @@
         template <typename Sequence, typename T>
         struct push_front
         {
- typedef single_view<typename detail::as_fusion_element<T>::type> single_view;
+ typedef fusion::single_view<typename detail::as_fusion_element<T>::type> single_view;
             typedef joint_view<single_view const, Sequence> type;
         };
     }
Index: sequence/view/ext_/segmented_iterator.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/fusion/sequence/view/ext_/segmented_iterator.hpp,v
retrieving revision 1.2
diff -b -d -u -r1.2 segmented_iterator.hpp
--- sequence/view/ext_/segmented_iterator.hpp 25 Oct 2006 05:27:43 -0000 1.2
+++ sequence/view/ext_/segmented_iterator.hpp 28 Apr 2007 00:35:33 -0000
@@ -78,16 +78,16 @@
 
             explicit segmented_range(Sequence &sequence_)
               : sequence(sequence_type(sequence_))
- , where(fusion::begin(sequence))
+ , where_(fusion::begin(sequence))
             {}
 
- segmented_range(sequence_type sequence_, iterator_type const &where_)
+ segmented_range(sequence_type sequence_, iterator_type const &wh)
               : sequence(sequence_)
- , where(where_)
+ , where_(wh)
             {}
 
             sequence_type sequence;
- iterator_type where;
+ iterator_type where_;
         };
     }
 
@@ -139,7 +139,7 @@
                 typedef typename Sequence::iterator_type type;
                 static type call(Sequence &seq)
                 {
- return seq.where;
+ return seq.where_;
                 }
             };
         };
@@ -175,7 +175,7 @@
 
             static type call(segmented_range<Sequence, Iterator, IsSegmented> const &rng)
             {
- return type(rng.sequence, fusion::next(rng.where));
+ return type(rng.sequence, fusion::next(rng.where_));
             }
         };
 


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk