$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: eric_at_[hidden]
Date: 2007-12-04 19:22:58
Author: eric_niebler
Date: 2007-12-04 19:22:58 EST (Tue, 04 Dec 2007)
New Revision: 41725
URL: http://svn.boost.org/trac/boost/changeset/41725
Log:
action bug fixes
Text files modified: 
   branches/proto/v3/boost/xpressive/detail/static/grammar.hpp |     6 +++---                                  
   branches/proto/v3/boost/xpressive/proto/make_expr.hpp       |     1 +                                       
   branches/proto/v3/boost/xpressive/proto/traits.hpp          |     2 +-                                      
   3 files changed, 5 insertions(+), 4 deletions(-)
Modified: branches/proto/v3/boost/xpressive/detail/static/grammar.hpp
==============================================================================
--- branches/proto/v3/boost/xpressive/detail/static/grammar.hpp	(original)
+++ branches/proto/v3/boost/xpressive/detail/static/grammar.hpp	2007-12-04 19:22:58 EST (Tue, 04 Dec 2007)
@@ -547,7 +547,7 @@
           : or_<
                 when< terminal<attribute_placeholder<_> >, as_read_attr(_arg) >
               , when< terminal<_>, _make_terminal(_arg) >
-              , otherwise< fold<_, _state, DeepCopy> >
+              , otherwise< nary_expr<_, vararg<DeepCopy> > >
             >
         {};
 
@@ -616,13 +616,13 @@
                                     subscript<_, CheckAssertion>
                                   , predicate_matcher<DeepCopy(_right, _left, int())>(
                                         DeepCopy(_right, _left, int())
-                                      , mark_number(arg(_left(_left)))
+                                      , mark_number(_arg(_left(_left)))
                                     )
                                 >
                               , otherwise<
                                     action_matcher<DeepCopy(_right, _left, int())>(
                                         DeepCopy(_right, _left, int())
-                                      , mark_number(arg(_left(_left)))
+                                      , mark_number(_arg(_left(_left)))
                                     )
                                 >
                             >
Modified: branches/proto/v3/boost/xpressive/proto/make_expr.hpp
==============================================================================
--- branches/proto/v3/boost/xpressive/proto/make_expr.hpp	(original)
+++ branches/proto/v3/boost/xpressive/proto/make_expr.hpp	2007-12-04 19:22:58 EST (Tue, 04 Dec 2007)
@@ -595,6 +595,7 @@
     typedef functional::make_expr<tag::assign>      _make_assign;
     typedef functional::make_expr<tag::negate>      _make_negate;
     typedef functional::make_expr<tag::terminal>    _make_terminal;
+    typedef functional::make_expr<tag::subscript>   _make_subscript;
     typedef functional::make_expr<tag::complement>  _make_complement;
     typedef functional::make_expr<tag::logical_not> _make_logical_not;
     typedef functional::make_expr<tag::shift_right> _make_shift_right;
Modified: branches/proto/v3/boost/xpressive/proto/traits.hpp
==============================================================================
--- branches/proto/v3/boost/xpressive/proto/traits.hpp	(original)
+++ branches/proto/v3/boost/xpressive/proto/traits.hpp	2007-12-04 19:22:58 EST (Tue, 04 Dec 2007)
@@ -259,7 +259,7 @@
             typename result<nary_expr(Expr, State, Visitor)>::type
             operator()(Expr const &expr, State const &state, Visitor &visitor) const
             {
-                typedef typename result<nary_expr(Expr, State, Visitor)>::apply apply;
+                typedef detail::apply_args<args<Args...>, typename Expr::proto_args, State, Visitor> apply;
                 typename result<nary_expr(Expr, State, Visitor)>::type that = {
                     apply::call(expr.proto_base().proto_args_, state, visitor)
                 };