public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib
@ 2015-02-28 13:37 glaubitz at physik dot fu-berlin.de
  2015-02-28 18:36 ` [Bug target/65251] " olegendo at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2015-02-28 13:37 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65251

            Bug ID: 65251
           Summary: sh4: internal compiler error: Bus error when compiling
                    cpp-netlib
           Product: gcc
           Version: 4.9.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: glaubitz at physik dot fu-berlin.de
            Target: sh*-*-*

Created attachment 34899
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34899&action=edit
Preprocessed source file for cpp-netlib 0.11.1 (gzipped)

Hello!

Just ran into another apparent gcc-4.9 regression on the Debian sh4 buildds,
this time when trying to build cpp-netlib:

[  9%] Building CXX object
libs/network/src/CMakeFiles/cppnetlib-uri.dir/uri/uri.cpp.o
cd /«BUILDDIR»/cpp-netlib-0.11.1+dfsg1/obj-sh4-linux-gnu/libs/network/src &&
/usr/bin/c++   -DBOOST_NETWORK_ENABLE_HTTPS -DBOOST_TEST_DYN_LINK
-Dcppnetlib_uri_EXPORTS -g -O2 -fstack-protector-strong -Wformat
-Werror=format-security -D_FORTIFY_SOURCE=2  -Wall -fPIC
-I/«BUILDDIR»/cpp-netlib-0.11.1+dfsg1    -o
CMakeFiles/cppnetlib-uri.dir/uri/uri.cpp.o -c
/«BUILDDIR»/cpp-netlib-0.11.1+dfsg1/libs/network/src/uri/uri.cpp
In file included from /usr/include/boost/spirit/home/qi/nonterminal.hpp:14:0,
                 from /usr/include/boost/spirit/home/qi.hpp:20,
                 from
/«BUILDDIR»/cpp-netlib-0.11.1+dfsg1/boost/network/uri/uri.ipp:9,
                 from
/«BUILDDIR»/cpp-netlib-0.11.1+dfsg1/libs/network/src/uri/uri.cpp:6:
/usr/include/boost/spirit/home/qi/nonterminal/rule.hpp: In function 'static
void boost::spirit::qi::rule<Iterator, T1, T2, T3,
T4>::define(boost::spirit::qi::rule<Iterator, T1, T2, T3, T4>&, const Expr&,
mpl_::true_) [with Auto = mpl_::bool_<true>; Expr =
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::bitwise_or,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l>, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::negate,
boost::proto::argsns_::list1<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::raw>, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::subscript,
boost::proto::argsns_::list2<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<boost::spirit::terminal_ex<boost::spirit::tag::repeat,
boost::fusion::vector1<int> > >, 0l>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const
char*, std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char&>, 0l> >, 2l>&>, 2l>&,
boost::spirit::qi::rule<__gnu_cxx::__normal_iterator<const char*,
std::basic_string<char> >, std::basic_string<char>(),
boost::spirit::unused_type, boost::spirit::unused_type,
boost::spirit::unused_type>&>, 2l>&>, 2l>&>, 1l>&,
boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<const char (&)[3]>, 0l> >, 2l>&>, 2l>&>, 2l>;
Iterator = __gnu_cxx::__normal_iterator<const char*, std::basic_string<char> >;
T1 = std::basic_string<char>(); T2 = boost::spirit::unused_type; T3 =
boost::spirit::unused_type; T4 = boost::spirit::unused_type]':
/usr/include/boost/spirit/home/qi/nonterminal/rule.hpp:184:9: internal compiler
error: Bus error
         }
         ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
Preprocessed source stored into /tmp/ccw3pP9A.out file, please attach this to
your bugreport.

Full build log here [1], pre-compiled gzipped source attached.

Cheers,
Adrian

> [1] http://buildd.debian-ports.org/status/fetch.php?pkg=cpp-netlib&arch=sh4&ver=0.11.1%2Bdfsg1-2&stamp=1425112786
>From gcc-bugs-return-478822-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sat Feb 28 10:10:30 2015
Return-Path: <gcc-bugs-return-478822-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 126922 invoked by alias); 28 Feb 2015 10:10:27 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 126900 invoked by uid 48); 28 Feb 2015 10:10:22 -0000
From: "goswin-v-b at web dot de" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug lto/65252] New: Link time optimization breaks use of filenames in linker scripts
Date: Sat, 28 Feb 2015 14:06:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: lto
X-Bugzilla-Version: 4.8.3
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: goswin-v-b at web dot de
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter cc cf_gcchost cf_gcctarget cf_gccbuild
Message-ID: <bug-65252-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2015-02/txt/msg03154.txt.bz2
Content-length: 1569

https://gcc.gnu.org/bugzilla/show_bug.cgi?ide252

            Bug ID: 65252
           Summary: Link time optimization breaks use of filenames in
                    linker scripts
           Product: gcc
           Version: 4.8.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
          Assignee: unassigned at gcc dot gnu.org
          Reporter: goswin-v-b at web dot de
                CC: goswin-v-b at web dot de
              Host: x86_64-linux-gnu
            Target: x86_64-linux-gnu
             Build: arm-none-eabi

I'm building a kernel for a Rapsberry Pi 2 with -flto. Most of the code will be
linked to 0x8000xxxx. The kernel image will be loaded to 0x8000 and I have set
up LMA and VMA in my linker script accordingly. But I have some bootstrap code
(boot.S and early.cc) that needs to at the physical address. So I put the
following in my linker script:

ENTRY(_start)
PHYS_TO_VIRT = 0x80000000;
SECTIONS
{
    . = 0x8000;
    .early : {
        boot.o(.*)
        early.o(.*)
    }

    /* rest of the code runs in higher half virtual address */
    . = . + PHYS_TO_VIRT;
    .text : AT(ADDR(.text) - PHYS_TO_VIRT) {
    ...

Using objdump -d I see the boot.o contents show up at 0x8000 exactly as it
should. But all the code from early.o only appears later in the .text section
and at the virtual adress. If I drop the -flto then everything works as
expected. It would be nice if -flto could preserve which file each function and
variable comes from so the linker can place them properly.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug target/65251] sh4: internal compiler error: Bus error when compiling cpp-netlib
  2015-02-28 13:37 [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib glaubitz at physik dot fu-berlin.de
@ 2015-02-28 18:36 ` olegendo at gcc dot gnu.org
  2015-03-01  0:46 ` kkojima at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: olegendo at gcc dot gnu.org @ 2015-02-28 18:36 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65251

Oleg Endo <olegendo at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kkojima at gcc dot gnu.org,
                   |                            |olegendo at gcc dot gnu.org

--- Comment #1 from Oleg Endo <olegendo at gcc dot gnu.org> ---
attachment 34899 doesn't compile on sh-elf out of the box.  I had to remove all
lines starting with #:

sed '/^#/ d' ccw3pP9A.out > ccw3pP9A_1.out


Other than that, I wasn't able to reproduce the error with an sh-elf xgcc
running on i686.  The Bus error could be some buggy misaligned mem access,
which is in the native sh4 gcc.

This means that probably the compiler that was used to compile the current
native sh4 gcc produced buggy code.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug target/65251] sh4: internal compiler error: Bus error when compiling cpp-netlib
  2015-02-28 13:37 [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib glaubitz at physik dot fu-berlin.de
  2015-02-28 18:36 ` [Bug target/65251] " olegendo at gcc dot gnu.org
@ 2015-03-01  0:46 ` kkojima at gcc dot gnu.org
  2015-10-26 12:35 ` olegendo at gcc dot gnu.org
  2015-10-26 12:55 ` glaubitz at physik dot fu-berlin.de
  3 siblings, 0 replies; 5+ messages in thread
From: kkojima at gcc dot gnu.org @ 2015-03-01  0:46 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65251

--- Comment #2 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
FYI, I can't reproduce the problem on i686-gcc cross sh4-unknown-linux-gnu
4.9/5 compilers, though the preprocessed source can be compiled as is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug target/65251] sh4: internal compiler error: Bus error when compiling cpp-netlib
  2015-02-28 13:37 [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib glaubitz at physik dot fu-berlin.de
  2015-02-28 18:36 ` [Bug target/65251] " olegendo at gcc dot gnu.org
  2015-03-01  0:46 ` kkojima at gcc dot gnu.org
@ 2015-10-26 12:35 ` olegendo at gcc dot gnu.org
  2015-10-26 12:55 ` glaubitz at physik dot fu-berlin.de
  3 siblings, 0 replies; 5+ messages in thread
From: olegendo at gcc dot gnu.org @ 2015-10-26 12:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65251

--- Comment #3 from Oleg Endo <olegendo at gcc dot gnu.org> ---
Adrian, any updates on this issue?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug target/65251] sh4: internal compiler error: Bus error when compiling cpp-netlib
  2015-02-28 13:37 [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib glaubitz at physik dot fu-berlin.de
                   ` (2 preceding siblings ...)
  2015-10-26 12:35 ` olegendo at gcc dot gnu.org
@ 2015-10-26 12:55 ` glaubitz at physik dot fu-berlin.de
  3 siblings, 0 replies; 5+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2015-10-26 12:55 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65251

--- Comment #4 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> ---
(In reply to Oleg Endo from comment #3)
> Adrian, any updates on this issue?

One of the buildds is currently building a fresh gcc-5 snapshot. We'll just
have to wait another 2 days, then I'll report back. Same goes for PR
target/66312.

Adrian


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-10-26 12:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-28 13:37 [Bug target/65251] New: sh4: internal compiler error: Bus error when compiling cpp-netlib glaubitz at physik dot fu-berlin.de
2015-02-28 18:36 ` [Bug target/65251] " olegendo at gcc dot gnu.org
2015-03-01  0:46 ` kkojima at gcc dot gnu.org
2015-10-26 12:35 ` olegendo at gcc dot gnu.org
2015-10-26 12:55 ` glaubitz at physik dot fu-berlin.de

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).