Boost logo

Boost :

From: Richard Hadsell (hadsell_at_[hidden])
Date: 2002-07-12 08:52:57


John Maddock wrote:
>
> > The build still fails at this point:
> >
> > g++ -o
> generic/boost_regex/cregex.o -c -O2 -I../../../ -march=i686 -mieee-fp
> > -DBOOST_USER_CONFIG="<boost/config/egcs-1.1.2-config.hpp>"
> ../src/cregex.cpp
> > In file included from ../../../boost/regex.hpp:1530,
> > from ../src/cregex.cpp:27:
> > ../../../boost/regex/detail/instances.hpp:108: syntax error before `<'
> > ../../../boost/regex/detail/instances.hpp:135: confused by earlier errors,
> > bailing out
> >
> > Is this hopeless?
>
> I hope not :-)
> Try adding BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS to the list of defines
> and see if it's any better, I notice that I may have left out part of the
> tests that should be conducted for this macro, so if this fixes things let
> me know.

That didn't help. instances.hpp:108 is this:

template
reg_expression<BOOST_REGEX_CHAR_T>::~reg_expression<BOOST_REGEX_CHAR_T>();

Changing it to this solves that problem:

template reg_expression<BOOST_REGEX_CHAR_T>::~reg_expression();

It seems that the compiler wants you to use the same kind of syntax as for a
constructor, without the repeated template spec. Maybe that will require yet
another BOOST_NO_WHATEVER macro. Or

Now the next problem that compiler crashes on is this:

g++ -o generic/boost_regex/cregex.o -c -O2 -I../../../ -march=i686 -mieee-fp
-DBOOST_USER_CONFIG="<boost/config/egcs-1.1.2-config.hpp>" ../src/cregex.cpp
../../../boost/regex/detail/regex_match.hpp: In function `bool
query_match_aux<const char *, ::boost::detail::::boost::detail::allocator<char>,
char, ::boost::::boost::regex_traits<char>,
::boost::detail::::boost::detail::allocator<char>>(const char *, const char *,
class ::boost::::boost::match_results<const char
*,::boost::detail::::boost::detail::allocator<char> > &, const class
::boost::::boost::reg_expression<char,::boost::::boost::regex_traits<char>,::boost::detail::::boost::detail::allocator<char>
> &, unsigned int, class ::boost::re_detail::::boost::re_detail::_priv_match_data<const char *,::boost::detail::::boost::detail::allocator<char> > &, const char **)':
../../../boost/regex/detail/regex_match.hpp:1641: instantiated from
`regex_match<const char *, ::boost::detail::::boost::detail::allocator<char>,
char, ::boost::::boost::regex_traits<char>,
::boost::detail::::boost::detail::allocator<char>>(const char *, const char *,
::boost::::boost::match_results<const char
*,::boost::detail::::boost::detail::allocator<char> > &, const
::boost::::boost::reg_expression<char,::boost::::boost::regex_traits<char>,::boost::detail::::boost::detail::allocator<char>
> &, unsigned int)'
../src/cregex.cpp:204: instantiated from here
../../../boost/regex/detail/regex_match.hpp:490: Internal compiler error.
../../../boost/regex/detail/regex_match.hpp:490: Please submit a full bug report
to `egcs-bugs_at_[hidden]'.
../../../boost/regex/detail/regex_match.hpp:490: See
<URL:http://egcs.cygnus.com/faq.html#bugreport> for details.

cregex.cpp:204 is this:

   if(regex_match(p, end, pdata->m, pdata->e, flags))

-- 
Dick Hadsell			914-259-6320  Fax: 914-259-6499
Reply-to:			hadsell_at_[hidden]
Blue Sky Studios                http://www.blueskystudios.com
44 South Broadway, White Plains, NY 10601

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