Boost logo

Boost-Commit :

From: eric_at_[hidden]
Date: 2008-03-06 12:56:43


Author: eric_niebler
Date: 2008-03-06 12:56:42 EST (Thu, 06 Mar 2008)
New Revision: 43530
URL: http://svn.boost.org/trac/boost/changeset/43530

Log:
work around msvc-7.1 bug
Text files modified:
   trunk/boost/xpressive/detail/static/transforms/as_independent.hpp | 15 +++++++++------
   1 files changed, 9 insertions(+), 6 deletions(-)

Modified: trunk/boost/xpressive/detail/static/transforms/as_independent.hpp
==============================================================================
--- trunk/boost/xpressive/detail/static/transforms/as_independent.hpp (original)
+++ trunk/boost/xpressive/detail/static/transforms/as_independent.hpp 2008-03-06 12:56:42 EST (Thu, 06 Mar 2008)
@@ -102,7 +102,7 @@
             typedef
                 typename Grammar::template result<void(
                     arg_type
- , typename IndependentEndXpression::result<void(arg_type, proto::ignore_, proto::ignore_)>::type
+ , typename IndependentEndXpression::result<void(arg_type, int, int)>::type
                   , Visitor
                 )>::type
             xpr_type;
@@ -114,10 +114,11 @@
         operator ()(Expr const &expr, State const &, Visitor &visitor) const
         {
             typedef result<void(Expr, State, Visitor)> result_type;
+ int i = 0;
             return typename result_type::type(
                 Grammar()(
                     proto::arg(expr)
- , IndependentEndXpression()(proto::arg(expr), proto::ignore, proto::ignore)
+ , IndependentEndXpression()(proto::arg(expr), i, i)
                   , visitor
                 )
               , false
@@ -137,7 +138,7 @@
             typedef
                 typename Grammar::template result<void(
                     arg_type
- , typename IndependentEndXpression::result<void(arg_type, proto::ignore_, proto::ignore_)>::type
+ , typename IndependentEndXpression::result<void(arg_type, int, int)>::type
                   , Visitor
                 )>::type
             xpr_type;
@@ -149,9 +150,10 @@
         operator ()(Expr const &expr, State const &, Visitor &visitor) const
         {
             typedef typename result<void(Expr, State, Visitor)>::xpr_type xpr_type;
+ int i = 0;
             xpr_type const &expr2 = Grammar()(
                 proto::arg(expr)
- , IndependentEndXpression()(proto::arg(expr), proto::ignore, proto::ignore)
+ , IndependentEndXpression()(proto::arg(expr), i, i)
               , visitor
             );
             std::size_t width = expr2.get_width().value();
@@ -171,7 +173,7 @@
             typedef detail::keeper_matcher<
                 typename Grammar::template result<void(
                     arg_type
- , typename IndependentEndXpression::result<void(arg_type, proto::ignore_, proto::ignore_)>::type
+ , typename IndependentEndXpression::result<void(arg_type, int, int)>::type
                   , Visitor
                 )>::type
> type;
@@ -181,10 +183,11 @@
         typename result<void(Expr, State, Visitor)>::type
         operator ()(Expr const &expr, State const &, Visitor &visitor) const
         {
+ int i = 0;
             return typename result<void(Expr, State, Visitor)>::type(
                 Grammar()(
                     proto::arg(expr)
- , IndependentEndXpression()(proto::arg(expr), proto::ignore, proto::ignore)
+ , IndependentEndXpression()(proto::arg(expr), i, i)
                   , visitor
                 )
             );


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk